|
A R C H I W A L N A W I A D O M O Ś Ć |
|
|
|
[C++] macierze... Jeżeli ktoś się zna to proszę o pomoc :) .... , Rebel_1 21/11/05 19:12 1. Dana jest macierz A o M wierszach i N kolumnach (M , N ? 100). Danajdź wiersz o największej sumie wartości elementów. Może ktoś powiedzieć gdzie tkwi błąd???
#include <iostream>
using namespace std;
typedef int Tab[8];
typedef Tab Mac[9];
Mac a={ 1,1,1,1,1,1,1,1,1,
2,2,2,2,2,2,2,2,2,
4,4,4,4,4,4,4,4,4,
3,3,3,3,3,3,3,3,3,
5,5,5,5,5,5,5,5,5,
7,7,7,7,7,7,7,7,7,
8,8,8,8,8,8,8,8,8,
9,9,9,9,9,9,9,9,9
};
int M=8,N=9;
int sumas=0,sumaw=0;
void main()
{
for (int i=0; i<N; i++)
for (int j=0; j<M; j++)
sumas+=a[i][j];
if (sumas>sumaw) sumaw=i;}
cout << "Wiersz o najwiekszej sumie ma numer: " << sumas << endl;
}
2. Dana jest macierz A o M wierszach i N kolumnach (M , N ≤ 100). Czy jest to macierz różnowartościowa ? Jak to zrobic ? Najlepiej w stylu pdobnym jak powyżej bez żadnych skomplikowanych struktur ;)
Wielki dzięki za każdą pomoc.- hmm , 0r8 21/11/05 19:34
ad1.
tablice sie okresla odwrotnie - tablica[kolumna][wiersz].
w tej chwili wszystkie sumowania sa takie same.- czyli jak ... , Rebel_1 21/11/05 19:38
to powinno wyglądać??- hmm , 0r8 21/11/05 20:23
po porawkach:
#include <iostream>
using namespace std;
typedef int Tab[8];
typedef Tab Mac[9];
Mac a={ 1,1,1,1,1,1,1,1,1,
2,2,2,2,2,2,2,2,2,
4,4,4,4,4,4,4,4,4,
3,3,3,3,3,3,3,3,3,
5,5,5,5,5,5,5,5,5,
7,7,7,7,7,7,7,7,7,
8,8,8,8,8,8,8,8,8,
9,9,9,9,9,9,9,9,9
};
int M=8,N=9;
int sumas=0,sumaw=0;
int main()
{
for (int i=0; i<M; i++)
for (int j=0; j<N; j++)
{
sumas+=a[j][i];
if (sumas>sumaw){sumaw=i;sumas=0;}}
cout << "Wiersz o najwiekszej sumie ma numer: " << sumaw << endl;
system("PAUSE");
}
wszystko miales odwrotnie.- hmm , 0r8 21/11/05 20:26
tfu, bzdura.
porownujesz sume elementow w wierszu do nr wiersza - co jest bezsensu.
musisz dorobic jeszcze jedna zmienna.- hmm , 0r8 21/11/05 20:28
no i jeszcze jedna rzecz. wrzucic tutaj program do poprawek - ok.
napisac cos na odpierdol na kolanie i czekac na napisanie tego od nowa?
ee, kolego. do roboty.
- hmm , bartek_mi 21/11/05 19:41
ktos wie....
to sie kompiluje? nie wyglada...
nie wnikajac w petle po czym one sa gdzie masz iwersze gdzie kolumny powinno byc tak
tmp=0;
max=0;
int index=-1;
//zakladamy ze w macierzy sa liczby tylko dodatnie...
for(int i=0; i< M; i++) //po wierszach
{
for(int j=0; j<N; j++) //po kolumnach w danym wierszu
{
tmp+=tab[i][j];
}
if(tmp>max)
{
max=tmp;
index=i;
}
}
cout<<i;
no jakos takos, circa aboutdzisiaj jest jutrzejszym wczoraj - maly update , bartek_mi 21/11/05 19:42
tmp=0;
max=0;
int index=-1;
//zakladamy ze w macierzy sa liczby tylko dodatnie...
for(int i=0; i< M; i++) //po wierszach
{
tmp=0; //tego brakowalo powyzej
for(int j=0; j<N; j++) //po kolumnach w danym wierszu
{
tmp+=tab[i][j];
}
if(tmp>max)
{
max=tmp;
index=i;
}
}
cout<<i;dzisiaj jest jutrzejszym wczoraj - bład... co zrobić... , Rebel_1 21/11/05 19:51
Marcin fatal error LNK1104: cannot open file 'C:\Documents and Settings\Marcin\Moje dokumenty\Visual Studio Projects\Marcin\Debug\Marcin.exe'
- a zna ktoś rozwiązanie 2 zadania ?? , Rebel_1 21/11/05 20:08
.......- hmm , Zajkos 22/11/05 15:31
pewnie nawet się nei skompiluje, ale co tam..
const int N=200;
const int M=100;
int tab[N][M];
bool Spr(void)
int i=0;
int *wsk=tab[0][0];
while (i<N*M)
{
for (int j=i;j<N*M;j++)
{
if (*(wsk+i)==*(wsk+j)) return false;
}
i++;
}
return true;
}
|
|
|
|
|
All rights reserved ® Copyright and Design 2001-2024, TwojePC.PL |
|
|
|