Kezdőoldal » Számítástechnika » Programozás » C++ feladat megoldásának vége?

C++ feladat megoldásának vége?

Figyelt kérdés

Segítségre lenne szükségem egy feladatban: A meteorológiai intézet az ország N településére adott M napos időjárás előrejelzést, az

adott településen az adott napra várt legmagasabb hőmérsékletet. Készíts programot, amely

megadja azokat a napokat, amikor legalább egy településen hűvösebb lesz, mint az előző nap

volt!



#include <iostream>


using namespace std;


int main()

{

int N,M;


do

{

cout << "Hany telepulesen mertuk a homersekletet?" << endl;

cin >> N;

}

while (N<=0);


do

{

cout << "Hany nap mertuk a homersekletet?" << endl;

cin >> M;

}

while (M<=0);


float t[N][M];


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

{

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

{

cout << "A(z) " << i+1 << ". telepulesen a(z) " << j+1 << ". napi homerseklet: " << endl;

cin >> t[i][j];

}

}



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

{ for (int j=0;j<M;j++){

if (t[i][j+1]<t[i][j])

{



Eddig eljutottam a feladattal, a végén viszont nem sikerül elérnem, hogy kiadja az összes napot (megszámolni meg tudom, az elsőt, amit talál, azt is ki tudom írni, de ez valahogy nem akar sikerülni.)


2012. máj. 2. 19:40
 1/7 anonim ***** válasza:

Ez megoldás nem jó?


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

{ for (int j=0;j<M-1;j++){

if (t[i][j+1]<t[i][j])

{

cout<<"A(z)"<<i+1<<". telepulesen a(z)"<<j+1<<". napi homerseklet alacsonyabb volt az elozo napinal"<<endl;

}

}

2012. máj. 2. 19:57
Hasznos számodra ez a válasz?
 2/7 A kérdező kommentje:

Köszi szépen!

Működik, annyi csak, hogy a cout-nál j+2.

2012. máj. 2. 20:11
 3/7 anonim ***** válasza:

Bocsánat, de nem az volt a feladat hogy adja meg "azokat a napokat, amikor legalább egy településen hűvösebb lesz, mint az előző nap"

volt"? Csak a napokat. Vagy így is jó?

pl kimenet: 2.nap 4.nap 5.nap

2012. máj. 2. 20:56
Hasznos számodra ez a válasz?
 4/7 A kérdező kommentje:
Csak a napokat, de annyi, hogy kiveszem onnan az i+1-t
2012. máj. 2. 21:02
 5/7 anonim ***** válasza:

"Csak a napokat, de annyi, hogy kiveszem onnan az i+1-t"

Már bocsi, de elég idétlen kimenetet ad akkor a program, egy napot többször kiírhat össze-vissza.

pl ezekre az adatokra:

22 22 22 30 24

30 25 28 26 22

25 27 30 30 24

20 23 25 29 20

27 24 26 29 26


5. napi homerseklet alacsonyabb volt az elozo napinal

2. napi homerseklet alacsonyabb volt az elozo napinal

4. napi homerseklet alacsonyabb volt az elozo napinal

5. napi homerseklet alacsonyabb volt az elozo napinal

5. napi homerseklet alacsonyabb volt az elozo napinal

5. napi homerseklet alacsonyabb volt az elozo napinal

2. napi homerseklet alacsonyabb volt az elozo napinal

5. napi homerseklet alacsonyabb volt az elozo napinal


Holott az elvárt kiment pl:

Napok:

2.nap 4.nap 5.nap


Segítség: Használj hozzá egy bool segéd tömböt.

2012. máj. 2. 21:13
Hasznos számodra ez a válasz?
 6/7 A kérdező kommentje:

Megcsináltam úgy, de valamiért még mindig nem adja ki a tömb összes elemét. Esetleg abban tud valaki segíteni, hogy mit rontottam el:


#include <iostream>


using namespace std;


int main()

{

int N,M;


do

{

cout << "Hany telepulesen mertuk a homersekletet?" << endl;

cin >> N;

}

while (N<=0);


do

{

cout << "Hany nap mertuk a homersekletet?" << endl;

cin >> M;

}

while (M<=0);


int t[N][M];


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

{

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

{

cout << "A(z) " << i+1 << ". telepulesen a(z) " << j+1 << ". napi homerseklet: " << endl;

cin >> t[i][j];

}

}



int jo[100];

int db=0;

bool vane=false;

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

{

for (int j=1;j<M;j++)

{

if (t[i][j]<t[i][j-1])

{

vane=false;

for(int w=0;w<=db;w++)

{

if(jo[w]==j)

{

vane=true;

}

}

if(vane==false){

jo[db]=j+1;

db++;

}

}

}

}


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

{

cout<<"Valamelyik telepulesen a(z)" <<jo[i]<< ". napi homerseklet alacsonyabb volt az elozo napinal"<<endl;

}



return 0;

}

2012. máj. 6. 13:32
 7/7 anonim ***** válasza:

"Megcsináltam úgy, de valamiért még mindig nem adja ki a tömb összes elemét."

Nem, nem csináltad meg úgy. Ha szerinted tévedek akkor mond meg hogy hanyadik sorba van deklarálva az a bizonyos bool tömb.

Egyáltalán miért bool tömböt írtam vajon? (Nem véletlen.) Mert az tulajdonképp mi is?

2012. máj. 6. 17:46
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!