Kezdőoldal » Közoktatás, tanfolyamok » Házifeladat kérdések » Pascal 1. Hogyan tudom kiíratn...

FKlara kérdése:

Pascal 1. Hogyan tudom kiíratni n darab beolvasott számból a legnagyobbat? 2. Bármely beolvasott szám összes osztójának megtalálasa és kiírása

Figyelt kérdés

2014. máj. 21. 10:52
 1/7 anonim ***** válasza:

A maximumkiválasztás tétele ismerős? Ha nem, akkor gugli.

Meddig jutottál a feladattal?

2014. máj. 21. 11:08
Hasznos számodra ez a válasz?
 2/7 A kérdező kommentje:

Nem is merem a maximumkiválasztás tételét, de még a matrixot sem tanultuk, for/repeat, if/else ciklussal kellene megirni. Meg csak kilencedikes vagyok :-(


program maxim;

uses crt;

var i, n, a, max : integer;

begin

clrscr;

writeln('hany szamunk van? ');

readln(n);

writeln ('kerem a szamokat: ');

for i:=1 to n do

begin

write('a= ');

read(a);

for IDE KENE EGY CIKLUS AMI SORRENDBE TESZI!!!!!!!!

(** if a > b then writeln('a nagyobbik szam: ',a)

else writeln('a nagyobbik szam: ',b); **)

readln;

end;

end.

2014. máj. 21. 11:35
 3/7 anonim ***** válasza:

OK, ez jó kezdet, csak read helyett mindenhol readln.


Mátrix nem is kellene, csak vektor (azaz tömb, amiben tárolhatod a számokat), de így is meg tudod csinálni, csak eltárolni nem tudod, amit beolvastál.

b ugye nem játszik, mert nem olvastad be.

Mivel nem tároltad el a számokat, nincs második ciklus, hiszen mindent az a-ba olvastál be, azaz minden lépésnél eldobod a előző értékét, nincs mire második ciklust írni.


Két lépés kell:

1. Mielőtt a for ciklust elkezdenél írjál egy

max:=MININT;

sort. A MININT a legkisebb használható egész szám (a gépben nincs végtelen). Ha nem mindig ezt írják be, akkor biztos, hogy lesz ennél nagyobb.

Utána minden lépésnél nézd meg egy iffel, hogy az éppen beolvasott a nagyobb-e, mint a max. Ha igen, akkor max:=a az új értéket fogja tárolni. A végén a ciklus után ezt kell kiírni.


Hajrá!

2014. máj. 21. 15:39
Hasznos számodra ez a válasz?
 4/7 A kérdező kommentje:

Közben rájöttem, ez a megoldás!


program maxim;

uses crt;

var i, n, a, max : integer;

begin

clrscr;

writeln('hany szamunk van? ');

readln(n);

writeln ('kerem a szamokat: ');

for i:=1 to n do

begin

write('a= ');

read(a);

for IDE KENE EGY CIKLUS AMI SORRENDBE TESZI!!!!!!

(** if a > b then writeln('a nagyobbik szam: ',a)

else writeln('a nagyobbik szam: ',b); **)

readln;

end;

end.


Most az osztókkal kell megbírkóznom :-( Köszi a segítséget!

2014. máj. 21. 18:04
 5/7 A kérdező kommentje:

Jah, bocs rosszul másoltam, ez a Jóóó


program maxim;


uses crt;


var i,

n, a, max, minint :integer;


begin

clrscr;

writeln('hany szamunk van?');

readln(n);

writeln('kerem a szamokat:');

max := a ;

for i:= 1 to n do

begin

write('a= ');

readln(a);

if a > max then max:= a ;

end;

write('a legnagyobb: ',max);

readln;

end.

2014. máj. 21. 18:06
 6/7 anonim ***** válasza:

Majdnem, de még nem egészen. De haladtál.

A MININT egy konstans, ami a programnyelvbe van építve, tehát nem kell deklarálni. Leginkább egy mínusz kétmilliárd körüli szám lehet, de konkrét rendszertől függ, mennyi.

Vedd ki az elejéről.

A max := a ; sor a for előtt nem jó, az a-nak nincs is ott értéke. Teszteld le úgy, hogy csupa negatív számot írsz be, látni fogod.

Helyette az kell, amit írtam, max:=MININT;

2014. máj. 21. 18:18
Hasznos számodra ez a válasz?
 7/7 anitaanita válasza:

Jézusom!


Van még olyan ember aki Pascalban tanít, és pénzt is kap érte?! A Pascalt Noé már régen kihajította a bárka ablakán.

2014. máj. 29. 09:00
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!