Kezdőoldal » Számítástechnika » Programozás » Pascalban elakadtam a következ...

Pascalban elakadtam a következő programmal?

Figyelt kérdés

Egy olyan programot kell készíteni, ami kiszámolja egy jármű átlagfogyasztását. Van 5 jármű, adott minden adat, az 5 jármű megtett km-re és az átlagfogyasztása literben. Kiiratom a képernyőre az adatokat, majd az átlagszámításban elakadtam, adott az átlaghoz a képlet

átlag=100*fogyasztás/megtett km:


program atlag;

uses crt;

const km:array[1..5] of integer=(300,4856,50,3578,345);

l:array[1..5] of integer=(72,198,4,234,35);

var i,j:integer;

atlag,eredmeny:double;


begin

clrscr;


for i:=1 to 5 do writeln(i,' jarmu megtett uta ', km[i],' km es fogyasztasa: ',l[i], ' liter');


atlag:=0;


for j:=1 to 5 do

begin

atlag:=(100*l[j]/km[j]);


writeln('az',j,' .jarmu atlagfogyasztasa:',j );

end;



repeat until keypressed;

end.


Nem igazán értek a tömbökhez. Előre is köszönöm, ha valaki segít!



2018. márc. 24. 15:23
1 2
 11/13 anonim ***** válasza:
100%

..."ezek szerint elég helyette a #10. Bocsánat."


Nem nem és nem. Pont nem vagyunk ezzel előrébb, nem ez volt a lényege.


sLineBreak:

"sLineBreak is an alias for LineEnding and is supplied for Delphi compatibility.


This constant is part of a set of constants that describe the OS characteristics. These constants should be used instead of hardcoding OS characteristics."


Az sLineBreak az egy alias a LineEnding-re, amely Delphi kompatibilis.

A konkrét értéke rendszerfüggő vagyis az operációs rendszertől függ, és a rendszer inicializálja. Ezen konstansok ahelyett vannak, hogy közvetlen a kódba beírnánk ezek értékét.


LineEnding:

"LineEnding is a constant which contains the current line-ending character. This character is system dependent, and is initialized by the system. It should not be set.


This constant is part of a set of constants that describe the OS characteristics. These constants should be used instead of hardcoding OS characteristics."


A LineEnding egy konstans, ami a sorvégjelet tartalmazza. A konkrét értéke rendszerfüggő vagyis az operációs rendszertől függ, és a rendszer inicializálja. Az értékét nem szabad általunk beállítani.

Használata a helyett van, hogy közvetlen a kódba beírnánk ennek a konkrét értéket.


Ez már nem a fordítás része, hanem megjegyzés, hogy különböző értéket vesz fel windows-on, linux-on. Részletesebben a sorvégjelekről : [link]

2018. márc. 26. 00:38
Hasznos számodra ez a válasz?
 12/13 tabaki ***** válasza:

Bah, ne is említsd... Tudom én, csak komiszkodni akartam, aztán egyrészt majmot csináltam magamból, másrészt, ami kellemetlenebb, neked adtam fölösleges gépelni valót. A LineEnding (ami ugyebár a sLineBreak másik neve) leírásánál egyértelműen szerepel ez:

const LineEnding = #10;


Eddig tök jó, csak ezek után következett most a kínosabb felfedezés, a fölötte lévő sor, amire eddig nem figyeltem fel:

Source position: sysunixh.inc line 28


...tehát ez a _linuxos_ system unitban szereplő érték, és vélhetőleg azért kaptam pont ezt az oldalt, mert történetesen linuxból böngésztem a dokumentációt. Úgyhogy most már tényleg komolyan bocsánatot kérek, természetesen igazad van. Remélem, legalább Kérdező húz valami hasznot a gyötrelmes incidensből.

2018. márc. 26. 01:19
Hasznos számodra ez a válasz?
 13/13 A kérdező kommentje:
Köszi szépen a részletes válaszokat!:)
2018. márc. 27. 18:58
1 2

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!