Kezdőoldal » Számítástechnika » Programozás » Hogyan írhatok betűszámláló...

Hogyan írhatok betűszámláló programost free pascal-lal?

Figyelt kérdés

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.



#programozás #Free Pascal #betű számláló
2015. febr. 7. 12:26
1 2 3 4
 1/40 anonim ***** válasza:

- Nyilvántartod a darabszámot, ami kezdetben 0.

- Ciklussal végigmész a String karakterein.

- Megvizsgálod, hogy az adott karakter egyenlő-e "a"-val.

- Ha egyenlő, akkor növeled a darabszámot.

- HappyEnd();

2015. febr. 7. 12:42
Hasznos számodra ez a válasz?
 2/40 anonim ***** válasza:

Elég régen tanultam a pascal, de remélem, hogy ez segít:

....



Program feladat1;

var s: string;

function hanyDarabA(var s: string) : integer;

var i, n, db : integer;

begin

n := length(s);

db := 0;

for i := 1 to n do

if (s[i] = 'a') then

db := db + 1;

hanyDarabA := db;

end;

Begin


write('s: ');

readln(s);

writeln(hanyDarabA(s));

end.


.....


A prog.ide.sk-n sokat tanulhatsz a pascalról.

2015. febr. 7. 12:43
Hasznos számodra ez a válasz?
 3/40 anonim ***** válasza:
Végülis, minek gondolkodjon a kérdező, nem?
2015. febr. 7. 12:44
Hasznos számodra ez a válasz?
 4/40 anonim ***** válasza:
Semmi baj, legalább én is átismételtem a pascalt. Első évben használtam utoljára pascalt, mostanra eléggé megkopott a tudásom ebben a nyelvben. :(
2015. febr. 7. 12:47
Hasznos számodra ez a válasz?
 5/40 SimkoL ***** válasza:

Picit hosszú lett az a függvény :):


function CharNumber( s : string; ch : char) : integer;

var i : integer;

begin

CharNumber := 0;

for i := 1 to Length(s) do if s[i] = ch then Inc(CharNumber);

end;

2015. febr. 7. 13:27
Hasznos számodra ez a válasz?
 6/40 anonim ***** válasza:
Tudtommal a függvénynek csak egyszer lehet értéket adni, azaz nem lehet növelni az értékét, de lehet, hogy rosszul tudom.
2015. febr. 7. 14:12
Hasznos számodra ez a válasz?
 7/40 SimkoL ***** válasza:
Többször lehet, de minimum egyszer kell, bár elvileg nem áll meg hibával ha nem adsz értéket, csak a fordító figyelmeztet.
2015. febr. 7. 14:29
Hasznos számodra ez a válasz?
 8/40 anonim ***** válasza:
Már nem nagyon emlékszem. C/C++-ban, JAVA-ban, C#-ban csak egyszer lehet return-olni.
2015. febr. 7. 15:47
Hasznos számodra ez a válasz?
 9/40 SimkoL ***** válasza:
Igen mert azokban a return-nel ki is lépsz a függvényből, Pascal-ban vagy véget ér a függvény end;-el vagy Exit-el kilépsz még a vége előtt. Az az igazság a függvény neve helyett inkább Result-ot kéne, lenne illendőbb használni, de azt még a Turbo Pascal nem ismerte. A Free Pascal pedig 'megeszi' mind a kettőt.
2015. febr. 7. 15:58
Hasznos számodra ez a válasz?
 10/40 anonim ***** válasza:

Ha esetleg egy függvény nélküli kellene, én is írtam egyet.

A ChN-t azért deklaráltam Byte típusúnak, mivel egy sztring 255 karakter hosszú lehet maximum és ha az adott betűből az összes a string hossza, akkor se lépi túl a limitet. :-)

Nem tudom része -e a feladatnak, de meg is lehet adni hogy milyen betűt számoljon.


Program Betuszamlalo;

Var

s : String;

I : Byte;

ch : Char;

ChN : Byte;

Begin

Write(#13#10,'Kérem a szöveget : ');

ReadLn(s);

Write(#13#10,'Milyen betűt számoljunk meg? : ');

ReadLn(ch);

ChN := 0;

for I:=1 To Length(S) do

if ch = s[i] Then

Inc(ChN);

WriteLn(ChN,' darab ',ch,' betű van.');

readln;

end.

2015. febr. 7. 16:36
Hasznos számodra ez a válasz?
1 2 3 4

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

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!