[Pascal] przeksztalcenie zdania

Odpowiedz Nowy wątek
2006-11-24 16:24

Rejestracja: 13 lat temu

Ostatnio: 13 lat temu

0

Musze zrobic program ktory po w pisaniu zdania przeksztalca go w ten sposob ze najpierw wypisuje wszystkie samogloski a potem wszystkie spolgloski, np Dla zdania: to jest zdanie. pszeksztalca na: oeaie tjstzdn.

Program mi dziala tylko, ze zamiast przeksztalcic na: oeaie tjstzdn. pisze mi: oeaie t jst zdn . Jak mam sie pozbyc tych spacji pomiedzy spolgloskami???

program szyfr_jezyka;    
uses crt;
var s:string;
    i:integer;
    czy:boolean;
begin
write('Napisz zdanie: ');
readln(s);
czy:=true;

   for i:=1 to length(s) do
     if UpCase(s[i]) in ['A','I','E','O','U','Y'] then
       write(s[i]);
   write(' ');

   for i:=1 to length(s) do
   begin
     if UpCase(s[i]) in  ['A','I','E','O','U','Y']  then    
        czy:=false
     else write(s[i]);
   end;

readkey;
end.

Z gory dzieki za pomoc.

Pozostało 580 znaków

2006-11-24 16:34

Rejestracja: 13 lat temu

Ostatnio: 7 lat temu

0

Pewnie dlatego, że uznajesz spację jako spółgłoskę:

for i:=1 to length(s) do
   begin
     if UpCase(s[i]) in  ['A','I','E','O','U','Y',' ']  then    
        czy:=false
     else write(s[i]);
   end;

Powinno załatwić sprawę. Poza tym zastanawia mnie po kiego Ci tam to czy ?


Nie łam się, i tak ktoś zrobił to za ciebie
<hr style="color: #B10C0C; width: 10%; margin-left: 0" />
LUDZIE goto NIE UŻYWA SIĘ WSZĘDZIE GDZIE MOŻNA, TYLKO TAM GDZIE TRZEBA

Pozostało 580 znaków

2006-11-24 16:46

Rejestracja: 13 lat temu

Ostatnio: 13 lat temu

0

Dzieki juz mi dziala, wiedzialam ze spacje trzeba tam gdzies zaznaczyc tylko nie wiedzialam jak

Loloki napisał(a)

Powinno załatwić sprawę. Poza tym zastanawia mnie po kiego Ci tam to czy ?

a w jaki inny sposob mialam napisac ze te liczby nie naleza do samoglosek i ' ' ?

Jeszcze mam jeden pytanko?? Jak zrobic zeby wypisywalo pierwsza litere duza??

Pozostało 580 znaków

2006-11-24 16:49

Rejestracja: 16 lat temu

Ostatnio: 7 lat temu

0

ale przecież nigdzie z tego czy nie korzystasz :/


- Ciemna druga strona jest.
- Nie marudź Yoda, tylko jedz tego tosta.
Google NIE GRYZIE!
Pomogłem - kliknij

Pozostało 580 znaków

2006-11-24 16:51

Rejestracja: 13 lat temu

Ostatnio: 7 lat temu

0

A na przykład tak :)

if not (UpCase(s[i]) in  ['A','I','E','O','U','Y',' '])  then    
 write(s[i]);

Dodawanie kodu nic nie robiącego w programie mija się z celem, a do tego klawiatrura się bardziej zużywa
;)


Nie łam się, i tak ktoś zrobił to za ciebie
<hr style="color: #B10C0C; width: 10%; margin-left: 0" />
LUDZIE goto NIE UŻYWA SIĘ WSZĘDZIE GDZIE MOŻNA, TYLKO TAM GDZIE TRZEBA

Pozostało 580 znaków

2006-11-24 17:05

Rejestracja: 13 lat temu

Ostatnio: 13 lat temu

0

rzeczywiscie not moglam wykorzystac [wstyd]

Pozostało 580 znaków

2006-11-24 17:49

Rejestracja: 13 lat temu

Ostatnio: 6 lat temu

0
function FirstLetterUpper(s :string) :string;
begin
 s[1] := UpCase(s[1]);
 Result := s;
end;

<span style="color: blue">"Kolarstwo to jedna z najtrudniejszych dyscyplin sportu. Nawet najgorszy kolarz jest wciąż wybitnym sportowcem."
s.p. Marco Pantani
</span>

Pozostało 580 znaków

2006-11-24 19:29

Rejestracja: 13 lat temu

Ostatnio: 13 lat temu

0

w ktorym miejscu powinnam to dodac bo jak wpisalam tak jak ponizej to nie dziala , chyba ze zle to napisalam????

program szyfr_jezyka;             

uses crt;
var s,c:string;
    i:integer;
    czy:boolean;
begin
write('Napisz zdanie: ');
readln(s);
czy:=true;

   for i:=1 to length(s) do

     if UpCase(s[i]) in ['A','I','E','O','U','Y'] then
     begin
       c[1]:=UpCase(c[1]);                       <============================
       c[i]:=s[i];
       write(c[i]);
     end;

   write(' ');

   for i:=1 to length(s) do
     if UpCase(s[i]) in  ['A','I','E','O','U','Y',' ']  then
       czy:=false
     else
     begin
       c[i]:=s[i];
       write(c[i]);
     end;
readkey;
end.

Pozostało 580 znaków

2006-11-24 20:32

Rejestracja: 14 lat temu

Ostatnio: 3 lata temu

0
program Zadanie;

  var
  i:byte;
  Zdanie , Samogloski,Spolglaski:String;

begin
Writeln('Napisz zdanie :');
Readln(Zdanie);
for i:=1 to length(Zdanie) do
if UpCase(Zdanie[i])in ['A','I','E','O','U','Y']  then
Samogloski:=Samogloski+Zdanie[i] else
if UpCase(Zdanie[i]) in ['B','C','D','F','G','H','J','K','L','M','N','P','Q','R','S','T','V','W','X','Z'] then
Spolglaski:=Spolglaski+Zdanie[i];
Write(Samogloski,'   ',Spolglaski);
readln;
end.

;-P prosze bardzo bo coś nakombinowałaś
( nie dawałem polskich znaków typu ń ć ż,ź ale to możesz dopisać

Pozostało 580 znaków

2006-11-24 20:48

Rejestracja: 13 lat temu

Ostatnio: 6 lat temu

0

A jak chcesz pierwsza literę wielka to lekka modyfikacja programu piotrkadp.

Write(FirstLetterUpper(Samogloski), '   ', FirstLetterUpper(Spolgloski));

<span style="color: blue">"Kolarstwo to jedna z najtrudniejszych dyscyplin sportu. Nawet najgorszy kolarz jest wciąż wybitnym sportowcem."
s.p. Marco Pantani
</span>

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0