Пожалуйста напишите прогу на Pascal'е!

Ответить
Serge_Bliznykov
Сообщения: 375
Зарегистрирован: 31 авг 2007, 03:06

да, ещё. лень копаться в алгоритме. но, имхо, последнее слово, похоже не учитывается!
вот, для строчки:
щи,ага,порох.
выдаётся только буква "щ"
а должны ещё быть "п" и "х"

[qoute]поэтому для данной задачи в строчку нельзя ввести более 126 слов (и то однобуквенных ;-))[/quute] похоже обсчитался! 128 однобуквенных слов ;-)
Medved
Сообщения: 256
Зарегистрирован: 14 фев 2008, 20:51
Контактная информация:

&quot писал(а):да, ещё. лень копаться в алгоритме. но, имхо, последнее слово, похоже не учитывается!
вот, для строчки:
щи,ага,порох.
выдаётся только буква "щ"
а должны ещё быть "п" и "х"
У меня тоже был такой лаг. Исправлялось, если len := len+1
Medved
Сообщения: 256
Зарегистрирован: 14 фев 2008, 20:51
Контактная информация:

Первое время.
А потом перестало...
Serge_Bliznykov
Сообщения: 375
Зарегистрирован: 31 авг 2007, 03:06

что - "потом перестало"???... глючить??!!!! ВЫ ЭТО СЕРЬЁЗНО?! т.е Вы допускаете, что алгоритм, реализованный на языке высого уровня (в данном случае на Паскаль) может выдавать разные результаты ВНЕ зависимости от входных данных (я не беру во внимание алгоритмы, использующие сч.случайных чисел, разумеется)??
НЕ ВЕРЮ!! (с) Станиславский
Serge_Bliznykov
Сообщения: 375
Зарегистрирован: 31 авг 2007, 03:06

Кстати, ещё раз прочитал условие задачи.
"глухие согласные буквы, которые входят в каждое нечетное слово" КАЖДОЕ нечётное!
т.е. для моей строчки:
щи,ага,порох.
таких букв вообще нет....
Medved
Сообщения: 256
Зарегистрирован: 14 фев 2008, 20:51
Контактная информация:

&quot писал(а):Первое время.
А потом перестало...
&quot писал(а):что - "потом перестало"???... глючить??!!!! ВЫ ЭТО СЕРЬЁЗНО?! т.е Вы допускаете, что алгоритм, реализованный на языке высого уровня (в данном случае на Паскаль) может выдавать разные результаты ВНЕ зависимости от входных данных (я не беру во внимание алгоритмы, использующие сч.случайных чисел, разумеется)??
НЕ ВЕРЮ!! (с) Станиславский
Имелось ввиду, что после некоторых изменений в программе, len:=len+1 перестало ИСПРАВЛЯТЬ
&quot писал(а): Исправлялось, если len := len+1
Impulsive
Сообщения: 43
Зарегистрирован: 19 окт 2007, 20:53

const
N=100;

var
A, B: array[1..N] of char;
nA, nB: integer;
i, j: integer;
ch: char;
eq: boolean;

begin
nA := 0;
nB := 0;

Writeln('BBeguTe elementi 1-mnojestva ("0" - okon4anie vvoda):');
read(ch);
while (ch <> '0') do begin
if (ch <> #10) and (ch <> #13) then begin
inc(nA);
A[nA] := ch;
end;
read(ch);
end;

Writeln('BBeguTe elementi 2-mnojestva ("0" - okon4anie vvoda):');
read(ch);
while (ch <> '0') do begin
if (ch <> #10) and (ch <> #13) then begin
inc(nB);
B[nB] := ch;
end;
read(ch);
end;


for i:=1 to nA do
for j:=1 to nA-1 do begin
if A[j] > A[j+1] then begin
ch := A[j];
A[j] := A[j+1];
A[j+1] := ch;
end;
end;


for i:=1 to nB do
for j:=1 to nB-1 do begin
if B[j] > B[j+1] then begin
ch := B[j];
B[j] := B[j+1];
B[j+1] := ch;
end;
end;

eq := true;
if nA<>nB then eq := false
else begin
for i:=0 to nA do
if A <> B then eq := false;
end;

if eq = true then Writeln('MHo}|{ecTBa paBHbI!!!')
else Writeln('MHo}|{eCTBa He paBHbI!');
end.

#1 - помогите, упростите, подправти!!! Странно - показывает все время - не равны!
C_O_D_E
Сообщения: 296
Зарегистрирован: 13 фев 2008, 20:10
Откуда: Беларусь. Орша
Контактная информация:

2 Impulsive условие прочитать можно, или я пропустила тот момент, когда задания раздавались? :)
Если назначен специальный человек для контроля за чистотой исходной информации, то найдется изобратательный идиот, который придумает способ, чтобы неправильная информация прошла этот контроль.
Impulsive
Сообщения: 43
Зарегистрирован: 19 окт 2007, 20:53

Множества.
#1
Вычислить значение отношений:
['a','b']=['b','a']

паскаль
C_O_D_E
Сообщения: 296
Зарегистрирован: 13 фев 2008, 20:10
Откуда: Беларусь. Орша
Контактная информация:

именно с вводом с клавы, Random'но нельзя?
И почему в коде именно множества не используются?

вот так работает

Код: Выделить всё

const
N=100;

var
A, B: array[1..N] of char;
nA, nB: integer;
i, j: integer;
ch: char;
eq: boolean;

begin
nA := 0;
nB := 0;

Writeln('BBeguTe elementi 1-mnojestva ("0" - okon4anie vvoda):');
read(ch);
while (ch <> '0') do begin
if (ch <> #10) and (ch <> #13) then begin
inc(nA);
A[nA] := ch;
end;
read(ch);
end;

Writeln('BBeguTe elementi 2-mnojestva ("0" - okon4anie vvoda):');
read(ch);
while (ch <> '0') do begin
if (ch <> #10) and (ch <> #13) then begin
inc(nB);
B[nB] := ch;
end;
read(ch);
end;

{Сортируем 1-е м*ожество}
for i:=1 to nA do
for j:=1 to nA-1 do begin
if A[j] > A[j+1] then begin
ch := A[j];
A[j] := A[j+1];
A[j+1] := ch;
end;
end;

{Сортируем 2-е м*ожество}
for i:=1 to nB do
for j:=1 to nB-1 do begin
if B[j] > B[j+1] then begin
ch := B[j];
B[j] := B[j+1];
B[j+1] := ch;
end;
end;

{Ср*в*ив*ем м*ожеств*}
eq := true;
if nA<>nB then eq := false
else begin
for i:=0 to nA do
if A[i] <> B[i] then eq := false
else eq:= true;
end;

if eq = true then Writeln('MHo}|{ecTBa paBHbI!!!')
else Writeln('MHo}|{eCTBa He paBHbI!');
readln;
end.
Если назначен специальный человек для контроля за чистотой исходной информации, то найдется изобратательный идиот, который придумает способ, чтобы неправильная информация прошла этот контроль.
Ответить