GRY-Online.pl --> Archiwum Forum

Pomoc przy 2 programach w C++

13.12.2007
13:50
[1]

Tomas1987 [ Konsul ]

Pomoc przy 2 programach w C++

Mam zadane z programowanie w c++ 2 zadania.
Poniżej zamieszczam treść zadania z c++, opis z czym mam problem oraz kody programów.
------------------------------------------------------------------------------------------
1
Dana jest dwuwymiarowa tablica liczb całkowitych, zadeklarowana jako
int t[N,M]; Zapisz program, który tworzy tablice jednowymiarowa s[M],
zawierająca sumy wszystkich kolumn tablicy t . Program wczytuje dane z klawiatury.
--------------------------------------------------------------------------------------------
2
Dana jest dwuwymiarowa, kwadratowa tablica liczb całkowitych, zadeklarowana
globalnie jako int t[N,N]; Zapisz funkcje, która oblicza i zwraca poprzez wartość,
sumę elementów leżących na głównej przekątnej tablicy. Zapisana funkcje
przetestować w funkcji main( ). Tablice wypełnić losowo wartościami 0 lub 1.
---------------------------------------------------------------------------------------------
W zadaniu pierwszym nie umiem sobie poradzić z przepisaniem sumy kolumn do tablicy s[M].
Zadaniu 2 mam problem z napisaniem funkcji sumującej luczby na przekątnej.
!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@
KOD z zadania 1:

#include <cstdlib>
#include <iostream>

using namespace std;
int main(int argc, char *argv[])

int N;
int M;
int t[N][M];
int s[M];
int b;

cout<<"Podaj liczbe wierszy i kolumn.\n\n";
cout<<"Podaj liczbe wierszy N: ";
cin>>N;
cout<<endl;
cout<<"Podaj liczbe kolumn M: ";
cin>>M;
cout<<endl;
cout<<"Wprowadzaj elementy kolejno wierszami\n";
for(int i=0;i<N;i++)
for(int j=0;j<M;j++)
cin>>t[j];
cout<<endl;
for(int i=0;i<N;i++)

for(int j=0;j<M;j++)
cout<<t[j]<<" ";
cout<<endl;

for(int i=0;i<N;i++)
for(int j=i+1;j<M;j++)
b=t[j];
cout<<b;

system("PAUSE");
return EXIT_SUCCESS;

@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@!@
KOD z zad 2:

#include <cstdlib>
#include <iostream>
#include <stdlib.h>

using namespace std;
int N;
int suma=0;
void sumaa()

int t[N][N];
for(int i=0; i<N; i++)
for(int j=i+1; j<N; j++)
suma=suma+t[j];
cout<<suma<<endl;

int main(int argc, char *argv[])

srand(static_cast<unsigned>(time(0)));
int t[N][N];
cout<<"Podaj liczbe pol tablicy kwadratowej: ";
cin>>N;
for(int i=0;i<N;i++)
for(int j=0;j<N;j++)
t[j]=rand()%15;
for(int i=0;i<N;i++)

for(int j=0;j<N;j++)
cout<<t[j]<<" ";
cout<<endl;

sumaa();
system("PAUSE");
return EXIT_SUCCESS;

Z góry dziękuje.

13.12.2007
14:15
[2]

ribald [ Generaďż˝ ]

Tu masz 1 zadanie, porównaj sobie i zobacz co masz źle. Mi się nie chce wczytywać w Twój kod, łatwiej napisać od nowa samemu :)

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])

int n,m;

cout << "Podaj ilosc kolumn: " << endl;
cin >> n;
cout << "Podaj ilosc wierszy: " << endl;
cin >> m;
cout << endl;

int t[n][m];
int s[m];

//wypelnienie tablicy wartosciami
for(int i=0;i<n;i++)

for(int j=0;j<m;j++)

cout << "Podaj kolejny element tablicy: ";
cin >> t[j];


cout << endl;

//wyswietlenie tablicy
for(int i=0;i<n;i++)

for(int j=0;j<m;j++)

cout << " " << t[j];

cout << endl;

cout << endl;

//przypisanie sumy kolumn do tablicy jednowymiarowej
int suma=0;

for(int i=0;i<n;i++)

for(int j=0;j<m;j++)

suma+=t[j];

s=suma;
suma=0;


//wyswietlenie tablicy s
for(int i=0;i<n;i++)
cout << s << " ";
cout << endl;

system("PAUSE");
return EXIT_SUCCESS;




Zaraz luknę następne zadanie.

Edit: ale kupa, wszystkie wcięcia zjadło :(

13.12.2007
14:23
[3]

ribald [ Generaďż˝ ]

Kurde edit sie skonczył a widzę, że jak w nawiasie kwadratowym jest "i" to skrypt forumowy przerabia tekst na kursywę...

Wkleję jeszcze raz i dam w okrągłe nawiasy.

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])

int n,m;

cout << "Podaj ilosc kolumn: " << endl;
cin >> n;
cout << "Podaj ilosc wierszy: " << endl;
cin >> m;
cout << endl;

int t[n][m];
int s[m];

//wypelnienie tablicy wartosciami
for(int i=0;i<n;i++)

for(int j=0;j<m;j++)

cout << "Podaj kolejny element tablicy: ";
cin >> t(i)[j];


cout << endl;

//wyswietlenie tablicy
for(int i=0;i<n;i++)

for(int j=0;j<m;j++)

cout << " " << t(i)[j];

cout << endl;

cout << endl;

//przypisanie sumy kolumn do tablicy jednowymiarowej
int suma=0;

for(int i=0;i<n;i++)

for(int j=0;j<m;j++)

suma+=t[j](i);

s(i)=suma;
suma=0;


//wyswietlenie tablicy s
for(int i=0;i<n;i++)
cout << s(i) << " ";
cout << endl;

system("PAUSE");
return EXIT_SUCCESS;

13.12.2007
14:44
[4]

Tomas1987 [ Konsul ]

dzięki wielkie, jakbyś mail czas prosił bym o 2 zadanie;P

14.12.2007
20:52
[5]

ribald [ Generaďż˝ ]

Na śmierć zapomniałem :) Potrzebne Ci jeszcze?

© 2000-2024 GRY-OnLine S.A.