[ Príspevkov: 11 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 31.10.06
Prihlásený: 02.11.06
Príspevky: 6
Témy: 1 | 1
NapísalOffline : 31.10.2006 17:04 | POLE

Caute neviete mi niekto poradit ako mam spravit v pascale program ktory vypise pocet pismen podla toho ake slovo si uzivatel zada? Napr. BLBEC a program vypise 2xB,1xL,1xE,1xC. Dakujem za snahu mne to nejde uplne podla mojich predstav a chcel by som vediet kde robim chybu.
BTW: malo by sa to robit cez pole a:array (a..z) of integer


Offline

Čestný člen
Čestný člen
POLE

Registrovaný: 09.05.05
Prihlásený: 16.01.26
Príspevky: 1294
Témy: 69 | 69
Bydlisko: - - -
NapísalOffline : 31.10.2006 18:15 | POLE

Kód:
program LettsCount;
   type
      countArrType = array['a'..'z'] of integer;
   var
      sentence: string;
      lettcount: countArrType;
      here, which: integer;
      mychar, letter: char;
begin
   for mychar := 'a' to 'z' do
      lettcount[mychar] := 0;
   writeln('Napiste slovo');
   readln(sentence);
   for here := 1 to length(sentence) do
      begin
         letter := sentence[here];
         if letter in ['a'..'z'] then
            lettcount[letter] := lettcount[letter] + 1;
      end;
   for mychar := 'a' to 'z' do
      begin
         if lettcount[mychar] > 0 then
            writeln(lettcount[mychar],'.krat ',mychar);
      end;
end.


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 31.10.06
Prihlásený: 02.11.06
Príspevky: 6
Témy: 1 | 1
Napísal autor témyOffline : 31.10.2006 18:42 | POLE

srry ze ti do toho skacem ale asi 3 prikazy sme sa neucili nedalo by sa to niako lahsie polopatisitcky... ale dakujem za snahu


Offline

Čestný člen
Čestný člen
POLE

Registrovaný: 09.05.05
Prihlásený: 16.01.26
Príspevky: 1294
Témy: 69 | 69
Bydlisko: - - -
NapísalOffline : 31.10.2006 18:53 | POLE

hehe, ja som to stiahol z netu :) preto tam anglicke premeny..lahsie ti to neviem spravit, ale neviem na co, sak je to cele lahke na pochopenie a tie 3 prikazy mas v helpe pascalu tak povies profakovi ze si si to tam pozrel..alebo sem daj program co si spravil zatial ty a skusime ten vylepsit aby fungovali, pisal si ze nejde podla tvojich predstav uz len :o)


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 31.10.06
Prihlásený: 02.11.06
Príspevky: 6
Témy: 1 | 1
Napísal autor témyOffline : 31.10.2006 19:43 | POLE

takze neviem tu premennu countartype...co to je a neda sa to bez toho?


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 31.10.06
Prihlásený: 02.11.06
Príspevky: 6
Témy: 1 | 1
Napísal autor témyOffline : 31.10.2006 20:01 | POLE

ale asi takto niako som to ja vymyslel ale asi zle:

program slovo
uses crt;
var a:array [´a´..´z´] of integer;
i:integer;
pismena,pismeno:char;
slovo:string;
begin
writeln (´Zadaj svoje slovo.´);
readln (slovo);
for i := 1 to lenght(slovo) do
begin
if pismeno in [´a´..´z´] then writeln (´Mas tam zatial 1x toto´,pismeno);
if pismeno in [´a´..´z´] then pismeno := pismena;
end;
writeln (´Mas tam ´,pismena);
readln;
end.


Offline

Užívateľ
Užívateľ
POLE

Registrovaný: 24.06.05
Príspevky: 1085
Témy: 76 | 76
Bydlisko: sc
NapísalOffline : 01.11.2006 15:25 | POLE

takto vam to funguje??
neskusal som to compilovat, ale mi neako nejde do hlavy ze pole je z pismen (char) a deklarujete ho ako pole celych cisel (integer)..
funguje to bez problemov??


_________________
PODPIS BOL ZMAZANY Z DOVODU NERESPEKTOVANIA PRAVIDIEL FORA!!!
Offline

Čestný člen
Čestný člen
POLE

Registrovaný: 09.05.05
Prihlásený: 16.01.26
Príspevky: 1294
Témy: 69 | 69
Bydlisko: - - -
NapísalOffline : 01.11.2006 16:18 | POLE

p55p píše:
takto vam to funguje??
neskusal som to compilovat, ale mi neako nejde do hlavy ze pole je z pismen (char) a deklarujete ho ako pole celych cisel (integer)..
funguje to bez problemov??


to s tym pole je myslene ako oznacenia, pod jednotlivymi polozkami sa budu nachadzat cisla..takze a[b] napriklad ma hodnotu 0 a tak..a..z su iba oznacenia tych prvkov tam, ale hodnoty budu ciselne, preto integer..ak si myslel toto..

inac miso_t, v tom programe mi unika pointa co chces robit v tom for, sak "pismeno" nema ziadnu hodnotu, resp ziadnu si do tej premenej neprideloval tak cely ten cyklus sa rovno ignoruje
Takze vo for pod begin napis
Kód:
pismeno:=slovo[i];

, nasledujuce 2 riadky uz nemaju vobec vyznam :) ten prvy ti vypise "pismeno" , nasledujuci riadok...do pismeno pridelis nic ? musis pocet tych pismen zapisovat do poli, to sa deje v tom mojom kde tu

Kód:
lettcount[letter] := lettcount[letter] + 1;


a potom vypisovat polia kde je hodnota vyssia ako 0 ..

Definiciu toho countarrtype som nevedel najst na nete :o) ale jeho vyznam je ze normalne ked nacitas do pismena aktualne pismeno, cize napriklad 'b' tak potom potrebujes nejako zapisat do a['b']:=a['b']+1 ; ..a tento riadok musi byt premenlivi co nemas ako spravit..ak das a['pismeno'] tak ti to nepojde..ak das a[pismeno] tiez nie..ale ked pouzijes countarrtype tak mozes pouzit a[pismeno] , to je cele vyuzitie toho tam..proste sa tam dopisu ' ' vsade


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 31.10.06
Prihlásený: 02.11.06
Príspevky: 6
Témy: 1 | 1
Napísal autor témyOffline : 02.11.2006 9:25 | POLE

takte aok bude cely program vyzerat?? :oops:


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 31.10.06
Prihlásený: 02.11.06
Príspevky: 6
Témy: 1 | 1
Napísal autor témyOffline : 05.11.2006 13:48 | POLE

Kód:
 program pocitanie;
 ues crt;
 var a:array [´a´..´z´] of inetger;
 pis:array[1..100] of integer;
pismeno:char;
 i:integer;
slovo:string;
begin
clrscr;
   writeln (´Napis svoje slovo.´);
readln (slovo);
for i := 1 to lenght(slovo) do
begin
   readln (a[i]);
   pismeno:=0;
    if pismeno in [´a´..´z´] then pis[i] := pis[i] + 1;
end;
   for i := 1 to lengh(slovo) do
      begin
         writeln (´Mas tam´pismeno[i] ,pis[i],´krat.´  );
      end;
end.



a co takto keby to bolo? urvite tam niaka chba je ale aka?


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.11.06
Prihlásený: 31.12.07
Príspevky: 677
Témy: 9 | 9
NapísalOffline : 18.11.2006 10:07 | POLE

skús toto. Momentálne nemám nahodený pascal, len delphi tak mi chýba crt. To si tam pridaj a teda ani neviem či je správny výstup lebo mi to hneď vyhodí.. no to je jedno..
Kód:
program Project2;
 var a:array ['a'..'z'] of integer;       
pismeno:char;
 i:integer;
slovo:string;
begin
for pismeno:= 'a' to 'z' do a[pismeno]:=0; // počet všetkých písmen vynulujem
write('Napis svoje slovo: ');
read(slovo);
for i := 1 to length(slovo) do      //pre každé písmeno v slove..
begin
pismeno:=slovo[i];  //do písmena dám prvý znak zo slova
    if pismeno in ['a'..'z'] then a[pismeno] := a[pismeno] + 1; //ak sa nachádza v množine a-z tak ho pripočítam jednotku k hodnote uloženej pod indexom tohto písmena, teda k nule lebo na začiatku som dal do každého písmena nulu
end;
for pismeno := 'a' to 'z' do  //prejdem celým polom
      begin
         if a[pismeno]>0 then writeln ('Mas tam ',pismeno, a[pismeno],'krat.'  ); //ak je niekde nula, netreba vypisovať
      end;
end.


možno je to neprehladné kôli tým poznámkam, ale aby si pochopil ako som zmýšlal. Vravím že nezaručujem že bude fungovať, ale môže ti to byť aspoň inšipráciou. A k tvojmu programu: máš tam aj plno preklepov, napríklad nevieš napísať uses, length, namiesto apostrofov si dával dlžne alebo čo to bolo...


 [ Príspevkov: 11 ] 


POLE



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

RAID pole

[ Choď na stránku:Choď na stránku: 1, 2 ]

v Pevné disky a radiče

54

6633

10.01.2007 20:10

ertin

V tomto fóre nie sú ďalšie neprečítané témy.

Schovaj pole

v Frontend

2

353

05.02.2013 20:32

Ďuri

V tomto fóre nie sú ďalšie neprečítané témy.

Pole stringov

v Backend

2

728

15.11.2012 21:14

Denco1

V tomto fóre nie sú ďalšie neprečítané témy.

textove pole

v CMS

4

864

04.01.2011 12:22

prohibit

V tomto fóre nie sú ďalšie neprečítané témy.

raid pole

v Pevné disky a radiče

23

2545

09.07.2008 1:15

Pegas099

V tomto fóre nie sú ďalšie neprečítané témy.

Dynamicke pole..

v Backend

3

504

28.09.2011 22:56

Ando

V tomto fóre nie sú ďalšie neprečítané témy.

Dvojrozmerne pole

v Ostatné

2

847

22.01.2013 22:50

Gregi555

V tomto fóre nie sú ďalšie neprečítané témy.

Viacrozmerne pole

v Backend

3

644

07.12.2010 16:41

venom2

V tomto fóre nie sú ďalšie neprečítané témy.

Textové pole

v Frontend

2

604

13.09.2012 15:16

janosihelsky

V tomto fóre nie sú ďalšie neprečítané témy.

pascal - pole

v Ostatné

8

891

15.08.2009 9:44

beginner

V tomto fóre nie sú ďalšie neprečítané témy.

elmag. pole

v Ostatné

3

365

16.09.2014 14:47

logarytmus

V tomto fóre nie sú ďalšie neprečítané témy.

textove pole

v Frontend

5

661

20.06.2009 15:38

Snacker

V tomto fóre nie sú ďalšie neprečítané témy.

pole, rozdelenie textu..

v Backend

8

730

30.01.2009 16:56

newboy1

V tomto fóre nie sú ďalšie neprečítané témy.

C# pole matíc

v Backend

1

434

11.07.2010 11:37

dEVIANT

V tomto fóre nie sú ďalšie neprečítané témy.

strankovanie cez pole

v Backend

3

572

20.05.2008 8:56

p360t

V tomto fóre nie sú ďalšie neprečítané témy.

Pole do stringu

v Backend

3

473

10.03.2009 17:34

Tominator



© 2005 - 2026 PCforum, edited by JanoF