Задача на тему: множества

За вознаграждение или нахаляву (если повезёт)

Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill

Ответить
brouken
Сообщения: 23
Зарегистрирован: 18 май 2008, 13:14

Задан текст из маленьких латинских букв в конце стоит точка. Напечатать в алфавитном порядке все согласные буквы которые не входят ни в одно слово с использованием процедуры.



Вот мой вариант решения: В процесе решения зашёл в тупик, нужна ваша помощь.




type mmm=set of char;
var s1:string; h:set of char;
procedure rasbuk(s:string);
var i:integer;j,t:char;n:integer; ss, dd:mmm;
begin
ss:=[];
dd:=[];
for i:=1 to length(s) do
while s = '.' do
begin
while s = ' ' do
if s in h then ss:=ss+[s];
dd:=dd-ss;
for j:='a' to 'z' do
begin
n:=0;
for i:=1 to length(s) do
if j=s then n:=n+1;
if n>=2 then writeln(j);
end;
writeln('Bykvi ne vhodyawie v tekst');
for t:='a' to 'z' do
if t in dd then write(t);
end;
begin
writeln('vvedite tekst');
readln(s1);
h:=['a'..'z'];
rasbuk(s1);
readln;
end; end.


MrVenom
Сообщения: 21
Зарегистрирован: 05 окт 2008, 16:53
Контактная информация:

Че то под утро ничего особо не идет как тупо перебирать каждую букву, кароче вот:
procedure rasbuk(str:string; c: char);
var
j:integer;
ex:boolean;
begin
ex := true;
j := 1;
if (c in ['a','e','y','u','i','o','a']) then ex := false;
while ((str[j] <> '.') and (ex <> false)) do
begin
if (str[j] = c) then ex := false;
inc(j);
end;
if ex then write (c);
end;
var
str:string;
i:integer;
begin
write('Vvedite stroku:');
readln(str);
for i:= 97 to 122 do rasbuk(str,chr(i));
readln;
end.
Пишу программы. Не дорого. icq: 27ноль9два2. E-mail: Sn0Xx[гав-гав]yandex.ru
sasha3050
Сообщения: 26
Зарегистрирован: 04 окт 2008, 23:13

Помогите пожалуйста!!!!!!!Написать программу на paskal, метод гаусса с прямым и обратным ходом для систем уравнений из 5-ти элементов
MrVenom
Сообщения: 21
Зарегистрирован: 05 окт 2008, 16:53
Контактная информация:

помогите, это типа напишите за меня?)))))
Пишу программы. Не дорого. icq: 27ноль9два2. E-mail: Sn0Xx[гав-гав]yandex.ru
brouken
Сообщения: 23
Зарегистрирован: 18 май 2008, 13:14

MrVenom писал(а):Че то под утро ничего особо не идет как тупо перебирать каждую букву, кароче вот:
procedure rasbuk(str:string; c: char);
var
j:integer;
ex:boolean;
begin
ex := true;
j := 1;
if (c in ['a','e','y','u','i','o','a']) then ex := false;
while ((str[j] <> '.') and (ex <> false)) do
begin
if (str[j] = c) then ex := false;
inc(j);
end;
if ex then write (c);
end;
var
str:string;
i:integer;
begin
write('Vvedite stroku:');
readln(str);
for i:= 97 to 122 do rasbuk(str,chr(i));
readln;
end.

Отличная идея, но вот я немогу понять почему именно от 97 до 122 в выделеной строке?
brouken
Сообщения: 23
Зарегистрирован: 18 май 2008, 13:14

sasha3050 писал(а):Помогите пожалуйста!!!!!!!Написать программу на paskal, метод гаусса с прямым и обратным ходом для систем уравнений из 5-ти элементов

У тебя очень распространеная задача, посмотри вот здесь или здесь
Ответить