Hogyan írhatok betűszámláló programost free pascal-lal?
Egy olyan programra lenne szükségem, ami bekér egy szöveget, és megszámolja, hogy hány pl.:a betű van benne.
A segítséget előre is köszönöm.
Beírtam mindegyik megoldást és mindegyikre azt írta, hogy "Fatal error: 2".
Ebben a megoldásban: program Pelda04;
var s:string;
function helyekszama(x:string):integer;
var i,h:integer;
begin
h:=0;
for i:=1 to length(x) do
if x[i]=' ' then h:=h+1;
helyekszama:=h;
end;
begin
write('Irj be egy modnatot: ');
readln(s);
writeln('A mondatban ',helyekszama(s),' szokoz van.');
end.
Nem értem mire jó a function, milyért van az x:string ()-ben és utánna a : integer.
Nem tudom mi okozhat nálad fatal error-t...
string egy karakterlánc változó, egy összefüggő karaktersorozat, amely - alapesetben - 255 elemből áll.
a function az a függvény megnevezése, a végén pedig a :integer azért van, mert integer-ben adja vissza az értéket, a karakterek számát.
Az integer egy szám típus, amely - fejből írom - talán -32768 és .. 32768 tartományban mozog...
Nekem bármiféle probléma nélkül lefordult a kód...
Target OS: Win32 for i386
Compiling pelda04.pas
Linking pelda04.exe
17 lines compiled, 0.1 sec , 27184 bytes code, 1692 bytes data
7.2 Függvény - Function
A függvény feladata egy érték előállítása. Ezt az értéket a függvény nevéhez rendeljük, a függvény törzsében kell szerepelni legalább egy értékadó utasításnak,
amelyben a függvény neve a baloldalon áll. (Vigyázzunk, ha a jobboldalon szerepeltetjük a függvény nevét, akkor az már rekurziót jelent.
Példa egy ilyen hibára.)
A függvényt egy kifejezésben hívhatjuk meg, pl. egy értékadó utasítás jobboldalán.
Szerkezete megegyezik az eljáráséval azzal a különbséggel, hogy még meg kell határoznunk a viszatérési érték típusát is. Így a függvény feje:
FUNCTION azonosító [ ( formális paraméter lista ) ]: típusazonosító;
ahol a típusazonosító csak csak sorszámozott, valós, karakterlánc vagy mutató lehet.
Pl.
function Tangens(Alfa: real): real;
begin
if cos(Alfa) <> 0 then
Tangens := Sin(Alfa) / Cos(Alfa)
end;
Jaa és valószínűleg azt sem érted hogy miért szerepel a function után zárójelben a változónév és hogy string.
Címszerinti és érték szerinti paraméterátadásnak nézz utána.
Megvan és most már működik is a program.
Nagyon szépen köszönöm a segítséget és a rám fordított időt mindenkinek.
Egy pascali függvény valamennyire hasonlít egy matematikai függvényhez:
f: N-> Z:
f(x) = -x;
....
Én iskolás koromban így értettem meg, hogy pontosan mi is az function. Csak a pascalos függvények nem csak szám állhat az "f(x)" belsejében, és nem csak számot téríthetnek vissza.
További 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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!