I
ilya1989
Вариант 1 Даны вещественные массивы A[3][5], V[3][5]. Для каждого
массива опpеделить номеp столбца с наибольшим
количеством положительных элементов.
Программа неверно выдаёт в конце номер столбца!Всем буду очень признателен!)
Программирование совсем тяжело даётся(
массива опpеделить номеp столбца с наибольшим
количеством положительных элементов.
C++:
#include <iostream.h>
#include <conio.h>
#define I 3
#define J 5
void InputMas(float [I][J],char);
int RashetMas(float [I][J]);
void PrintMas(float [I][J],char ,int );
void main()
{
float A[I][J],V[I][J];
float num_stolbets_A;
float num_stolbets_V;
InputMas(A,'A');
num_stolbets_A=RashetMas(A);
//InputMas(V,'V');
//num_stolbets_V=RashetMas(V);
PrintMas(A,'A',num_stolbets_A);
//PrintMas(V,'V',num_stolbets_V);
getch();
}
void InputMas(float a[I][J],char name)
{
cout<<"-----------------------------------------------------------------------\n";
int i,j;
for(j=0;j<J;j++)
for(i=0;i<I;i++)
{
cout<<"Vvedite znacheniye s plavaytshey tochkoy v massiv "<<name<<"["<<j<<"]"
"["<<i<<"] = ";
cin>>a[i][j];
}
}
int RashetMas(float a[I][J])//Вот в этой функции вся загвоздка!!!
{
int j,kol[J];
int j_max=0;
for(j=0;j<J;j++)
{
for(int i=0;i<I;i++)
{
if(a[i][j]>0)
{
kol[j]++;
if(kol[j]==1)
{
j_max=j;
}
if(kol[j]>j_max)
{
j_max=j;
}
}
}
}
return j_max;
}
void PrintMas(float a[I][J],char name,int c)
{
cout<<"\nRESULTS\n";
cout<<"----------------------------------------------------------------------\n";
cout<<"Massiv "<<name<<" :\n";
for(int i=0;i<I;i++)
{
cout<<"\n";
for(int j=0;j<J;j++)
{
cout<<a[i][j]<<"\t";
}
cout<<"\n";
}
cout<<"\nNomer stolbtsa s maksimal kollitchestvom elem " <<c<<"\n";
}
Программирование совсем тяжело даётся(