Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.03.2012, 18:29   #1
vovik4385
Пользователь
 
Регистрация: 13.03.2012
Сообщений: 36
По умолчанию двумерный массив

Задание:В двумерном массиве хранятся оценки по иностранному языку каждого ученика класса!Определить кол-во 5,4,3,2 для каждого ученика и для всего класса в целом!
вот мой код:
Код:
#include "stdafx.h"
#include<iostream>
using namespace std;
int **getmemory(int n,int m);
void inputmas(int **mas,int n,int m);
void counter(int **mas,int n,int m,int &two,int &three,int &four,int &five);
void counter1(int **mas,int m,int &two,int &three,int &four,int &five);

int _tmain(int argc, _TCHAR* argv[])

{int **mas;

int n,m;
int four=0;
int two=0;
int three=0;
int five=0;


cout<<"vvedite kol-vo uchenikov:"<<"\n";
cin>>n;
cout<<"vvedite kol-vo oczenok:"<<"\n";
cin>>m;
mas=getmemory(n,m);
inputmas(mas,n,m);
//int *b;
//b=new int[n];

for(int i=0;i<n;i++){
	cout<<" ocenki:"<<i+1<<"uchenika\n";
	cout<<"two="<<two<<"\n"<<"three="<<three<<"four="<<four<<"\n"<<"five="<<five<<"\n";
	for(int j=0;j<m;j++){
		
		counter1(mas,m,two,three,four,five);
	}
		 
		
}
counter(mas,n,m,two,three,four,five);


cout<<"two="<<two<<"\n"<<"three="<<three<<"four="<<four<<"\n"<<"five="<<five<<"\n";
system("PAUSE");

	return 0;
}
int **getmemory(int n,int m){
	int **mas;
	mas=new int*[n];
	for(int i=0;i<n;i++)
		mas[i]=new int[m];
	return mas;}
void inputmas(int **mas,int n,int m){
	
	
	for(int i=0;i<n;i++){
		cout<<"vvedite ocenku:"<<i+1<<"uchenika\n";
		for(int j=0;j<m;j++){
			mas[i][j]=2+rand()%4;
		if((mas[i][j]!=2) && (mas[i][j]!=3) && (mas[i][j]!=4)&& (mas[i][j]!=5)){
			i--;
			continue;
		
		}}}}

void counter(int **mas,int m,int n,int &two,int &three,int &four,int &five){
	two=three=four=five=0;
	for(int i=0;i<n;i++){
	for(int j=0;j<m;j++){
		if (mas[i][j]==2) two++;
		else if(mas[i][j]==3) three++;
		else if(mas[i][j]==4) four++;
		else five++;
	}}}
void counter1(int **mas,int m,int &two,int &three,int &four,int &five){

	two=three=four=five=0;
	//for(int i=0;i<n;i++){
	for(int i=0;i<m;i++){
		if (*mas[i]==2) two++;
		else if(*mas[i]==3) three++;
		else if(*mas[i]==4) four++;
		else five++;}}



не могу сделать подсчет каждого ученика!!!

Последний раз редактировалось ACE Valery; 14.03.2012 в 19:52.
vovik4385 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
двумерный массив Junger Помощь студентам 5 29.11.2011 17:08
Одномерный массив и Двумерный массив eugene1437 Общие вопросы C/C++ 15 25.05.2011 19:17
Двумерный массив,TP ji-had Помощь студентам 0 16.03.2011 17:29
Двумерный массив, одномерный массив. Branbal Помощь студентам 14 18.11.2009 12:40
Двумерный массив!!! hoangvu2005 Помощь студентам 2 17.02.2009 21:50