Kezdőoldal » Számítástechnika » Programozás » Hogyan kell megírni egy...

Norbi658441 kérdése:

Hogyan kell megírni egy ''egyszerű'' programot lazarusban?

Figyelt kérdés

Az a helyzet,hogy ez a program holnapre kellene,de sajnos nemtudok semerre sem elindulni,valaki segítene,vagy leírná?

Szoval a programnek így kellene kinéznie:

-A beírt pozitív szám átlagját számolja ki

-A számokat addig kérje,míg 0-át nem írok be neki.

-Ha negatív értéket adok meg,akkor a program figyelmeztessen,hogy pozitívat adjak meg


Nagyon megköszönném,ha valaki segítene,vagy megmutatná egy mintaként,hogy hogyan kell megcsinálni.Előre is köszönöm.



2015. nov. 1. 18:59
 1/7 tabaki ***** válasza:
100%

Ez idáig szimpla pascal-feladat, akkor is, ha a Lazarus IDE-t használod szerkesztésre. A szerkezete nagyjából:


---


változók: szám, összeg, számló


ciklus indul

      beolvassa a számot

      szám nagyobb nullánál?

            igen: hozzáadod a számot az összeghez, és növeled a számlálót

            nem: szám kisebb nullánál?

                  igen: figyelmeztetést ír ki

ha szám egyenlő nullával, ciklus vége


elosztja az összeget a számlálóval, és kiírja az eredményt


---


Másold ide, meddig jutottál.

2015. nov. 1. 19:49
Hasznos számodra ez a válasz?
 2/7 A kérdező kommentje:
kb.nemtudok nekiállni se,mert nemértem.Értem,amiket ide leírtál,de nemtudom lefordítani program nyelvbe sajnos.
2015. nov. 1. 19:56
 3/7 tabaki ***** válasza:

Hát, ez igen szomorú, nem tudom, mit tanultok abban az iskolában... Itt egy nagyon egyszerű megoldás, hibakezelés nélkül, csak azért, hogy ne kapjál karót:


program atlag;


var szam, osszeg, szamlalo : integer;


BEGIN

      WriteLn('POZITÍV EGÉSZ SZÁMOK ÁTLAGA', #10#13);

      WriteLn('Írj be pozitív egész számokat.');

      WriteLn('A bevitel végét 0 érték beírásával jelezd.', #10#13);

      osszeg := 0; szamlalo := 0;

      repeat

            Write('Írd be a következő számot: '); ReadLn(szam);

            if szam > 0 then

                  begin

                        Inc(osszeg, szam); Inc(szamlalo);

                  end

            else

                  if szam < 0 then WriteLn('Negatív nem lehet!');

      until szam = 0;

      If osszeg > 0 then

            WriteLn('A számok átlaga, öt tizedesjegyig: ', osszeg / szamlalo :5:5)

      else

            WriteLn('Nem adtál meg egy számot sem!');

      ReadLn;

END.


Leszel szíves csak akkor bemutatni, ha nagyon muszáj. És addig tanulmányozd, míg pontosan meg nem értesz benne mindent.

2015. nov. 1. 20:29
Hasznos számodra ez a válasz?
 4/7 A kérdező kommentje:
Fú nagyon szépen köszi,ment a zöld kéz.
2015. nov. 1. 20:42
 5/7 SimkoL ***** válasza:

Egy picit utána is kereshettél volna, két napja volt http://www.gyakorikerdesek.hu/kozoktatas-tanfolyamok__hazife.. számbekerésre kérdés. Az ottani függvényemet felhasználva írtam neked egy 'szájbarágósat', de erről valószínűleg nem hiszik el, hogy te készítetted. Megtűzdeltem kommentekkel, hogy érthető legyen:


program Project2;


{$APPTYPE CONSOLE} //Csak Delphi-ben kell


var szam, szamlalo, osszeg : integer;


//Függvény a hibakezeléses szám bekéréshez

function beker(hol_tartunk: byte) : integer;

var i, hiba: integer;

s: string;

begin

i := 0;

hiba := -1;

//Amig a Val eljárás hibakódja nem egyenlő 0-val addig ismételjük

while hiba <> 0 do

begin

Write(#10#13, 'Kérem a ', hol_tartunk, '. elemet: ');

//Szövegként kérjük be

ReadLn(s);

//Átkonvertáljuk számmá

Val(s, i, hiba);

//Ha a szám negatív újrakérjük

if i < 0 then

begin

hiba := -1;

Write(#10#13, 'A szám nem lehet negatív !');

end;

end;

//A függvény visszatérési értéke i - a régebbi Pascal-ok nem ismerik a Result-ot

//ezért a függvény nevét használjuk

beker := i;

end;


begin

szamlalo := 0;

osszeg := 0;

repeat

szam := beker(szamlalo + 1);

Inc(szamlalo); //Növeljük a számlálót

Inc(osszeg, szam); //Növeljük az összeget == osszeg := osszeg + szam

until szam = 0;

Dec(szamlalo); //Mivel a 0-át is számoltuk ezért 1-el csökkentjük a számlálót

WriteLn('A számok összeg: ', osszeg, ' darabszáma: ', szamlalo, ' átlaga: ', (osszeg / szamlalo):0:5);

ReadLn;

end.


tabaki kollégához csatlakozva én sem értem, hogy mit vagy hogyan tanultok abban az iskolában :)

2015. nov. 1. 20:46
Hasznos számodra ez a válasz?
 6/7 A kérdező kommentje:
Vaszek magamon erőt és megpróbálom megtanulni,mert ez így nekem sem jó,hogy nem értek szinte semmit sem.Köszönöm a hasznos válaszokat!
2015. nov. 1. 21:08
 7/7 SimkoL ***** válasza:

Esetleg próbáld meg a Turbo Pascal 6.0 -t magyar nyelvű helppel. Igaz, hogy ezeréves, de alap dolgokra elég és a magyar help nagyon hasznos lehet egy kezdőnek.

[link]

2015. nov. 1. 21:25
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!