Здрасьте, помогите если кто может пожалуйста
Формулировка задачи такая:
Написать программу, которая считывает английский текст из файла и выводит слова, начинающиеся на гласную букву.
void __fastcall TForm1::Button2Click(TObject *Sender)
{ int i,j,k,j1,i1;
String s,s1,s2;
char gl[12]={'e','y','u','i','o','a','E','Y','U','I','O','A'};
s=Memo1->Text;
j=1;
s1=" ";
for(i=1;i<3;i++)
{ for(k=0;k<12;k++)
if (s[i]==gl[k])
while (s[j]!=' ')
{
s1=s1+s[j];
j+=1;
}
s1=s1+' ';
j+=2;
}
Memo1->Text=s1;
}
Сий чудный код стирает все к черту короче я че то воще запутался задача то вроде не сложная совсем, вообщем помогите хелп!!
29 декабря 2008 в 22:04
Много проводишь времени в интернете?Проводи с пользой!Зарегистрируйся //wm.beast.kz/signup.php?r=4458
//www.wmmail.ru/index2.php?ref=smoke402
29 декабря 2008 в 22:04
Ахтунг! Писал на коленке, забыл: после строки "delete(s,1,i);" надо вставить "dec(l,i);". Извиняюсь…
29 декабря 2008 в 20:01
Не силен в си, вот код на паскале:
const gl=['e','y','u','i','o','a','E','Y','U','I','O','A'];
var
s,s2:string;
i,l:longint;
begin
s:=memo1.text;
l:=length(s1);
s2:='';
while s<>'' do
begin
i:=2;
while (i<=l)
and(s[i]<>' ')do inc(i)
if s[1] in gl
then s2:=s2+copy(s1,1,i-1);
delete(s,1,i);
end;
memo1.text:=s2;
29 декабря 2008 в 20:01
пасибки большое