Kezdőoldal » Számítástechnika » Programozás » Csak betű és szóköz?

Csak betű és szóköz?

Figyelt kérdés

Olyan pascal programot szeretnék írni ami kiirja az "IGEN" üzenetet ha a sorozat csak betűből és szóközből áll, ellenkező esetben a "NEM"-et..

pl:Jancsi 19 éves.

Itt a Nem-et kell kiirja.

valami elmélet?


2012. febr. 29. 14:09
 1/4 iostream ***** válasza:
Én szívem szerint végigmennék a bemeneten karakterenként, és egy switch case-el megnézném, hogy karakter (a-z, A-Z) vagy szóköz-e, ha nem akkor kiírom hogy Nem és kilépek, egyébként ha végetért a bemenet akkor kiírom, hogy Igen.
2012. febr. 29. 14:48
Hasznos számodra ez a válasz?
 2/4 A kérdező kommentje:

switch case pascal-ba?

egyébként nem ismerem..

én egy egyszerű béna programot szeretnék írni háttértudás nélkül.

úgy képzeltem el hogy "ha a szöveg tartalmaz 1-t akkor írd ki hogy nem"

ha a szöveg tartalmaz 2-t akkor írd ki hogy nem else write Igen..

valami hasonlú alapműveletekből álló ötlet?

2012. febr. 29. 15:16
 3/4 coopper ***** válasza:

Szia.


Meg lehet oldani a Te módszereddel is, de szerintem az egy kicsit macerás :


pl.:


if pos ('0', szoveg)<>=0 then jelzo:=True;

if pos ('1', szoveg)<>=0 then jelzo:=True;

if pos ('2', szoveg)<>=0 then jelzo:=True;

if pos ('3', szoveg)<>=0 then jelzo:=True;

.

.

.

és még vagy 128 sor hasonlókkal tele (ugyanis nem csak a számokat, hanem a matematikai jeleket a speciális karaktereket is le kell csekkolni( és mindig ott van a lehetőség, hogy egyet kihagytál), ha ez kész akkor :


if jelzo

then writeln ("NEM")

else writeln ("IGEN");


Egyszerübb az első öttlete, egy ciklussal végigmész a szövegen, egy feltétellel megálapitod, hogy betű-e vagy szóköz az adott karakter, egy változót növelsz ha igen.


A végén összehasonlitod a szöveg hosszát a változóddal, ha egyformák akkor az azt jelenti, hogy csak betű és szóköz van a beadott szövegben.


itt a lényeg a többit rakd köré

(amit vizsgál :

a-z intevallum

A-Z intervallum és a

szóköz : " ")


darab:=0;

for i:=1 to length (szoveg) do begin

betu:=szoveg[i];

if ('a'<=betu) and (betu<='z') or ('A'<=betu) and (betu<='Z') or (betu=' ') then darab:=darab+1;

end ;

if darab=length (szoveg)

then writeln ('IGEN')

else writeln ('NEM');


Sok sikert.

Üdv.

2012. febr. 29. 16:56
Hasznos számodra ez a válasz?
 4/4 A kérdező kommentje:
köszi, ez sokat segített
2012. márc. 1. 21:54

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!