Пожалуйста напишите прогу на Pascal'е!
-
- Сообщения: 375
- Зарегистрирован: 31 авг 2007, 03:06
да, ещё. лень копаться в алгоритме. но, имхо, последнее слово, похоже не учитывается!
вот, для строчки:
щи,ага,порох.
выдаётся только буква "щ"
а должны ещё быть "п" и "х"
[qoute]поэтому для данной задачи в строчку нельзя ввести более 126 слов (и то однобуквенных ;-))[/quute] похоже обсчитался! 128 однобуквенных слов ;-)
вот, для строчки:
щи,ага,порох.
выдаётся только буква "щ"
а должны ещё быть "п" и "х"
[qoute]поэтому для данной задачи в строчку нельзя ввести более 126 слов (и то однобуквенных ;-))[/quute] похоже обсчитался! 128 однобуквенных слов ;-)
У меня тоже был такой лаг. Исправлялось, если len := len+1" писал(а):да, ещё. лень копаться в алгоритме. но, имхо, последнее слово, похоже не учитывается!
вот, для строчки:
щи,ага,порох.
выдаётся только буква "щ"
а должны ещё быть "п" и "х"
Первое время.
А потом перестало...
А потом перестало...
-
- Сообщения: 375
- Зарегистрирован: 31 авг 2007, 03:06
что - "потом перестало"???... глючить??!!!! ВЫ ЭТО СЕРЬЁЗНО?! т.е Вы допускаете, что алгоритм, реализованный на языке высого уровня (в данном случае на Паскаль) может выдавать разные результаты ВНЕ зависимости от входных данных (я не беру во внимание алгоритмы, использующие сч.случайных чисел, разумеется)??
НЕ ВЕРЮ!! (с) Станиславский
НЕ ВЕРЮ!! (с) Станиславский
-
- Сообщения: 375
- Зарегистрирован: 31 авг 2007, 03:06
Кстати, ещё раз прочитал условие задачи.
"глухие согласные буквы, которые входят в каждое нечетное слово" КАЖДОЕ нечётное!
т.е. для моей строчки:
щи,ага,порох.
таких букв вообще нет....
"глухие согласные буквы, которые входят в каждое нечетное слово" КАЖДОЕ нечётное!
т.е. для моей строчки:
щи,ага,порох.
таких букв вообще нет....
" писал(а):Первое время.
А потом перестало...
Имелось ввиду, что после некоторых изменений в программе, len:=len+1 перестало ИСПРАВЛЯТЬ" писал(а):что - "потом перестало"???... глючить??!!!! ВЫ ЭТО СЕРЬЁЗНО?! т.е Вы допускаете, что алгоритм, реализованный на языке высого уровня (в данном случае на Паскаль) может выдавать разные результаты ВНЕ зависимости от входных данных (я не беру во внимание алгоритмы, использующие сч.случайных чисел, разумеется)??
НЕ ВЕРЮ!! (с) Станиславский
" писал(а): Исправлялось, если len := len+1
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 - помогите, упростите, подправти!!! Странно - показывает все время - не равны!
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 - помогите, упростите, подправти!!! Странно - показывает все время - не равны!
-
- Сообщения: 296
- Зарегистрирован: 13 фев 2008, 20:10
- Откуда: Беларусь. Орша
- Контактная информация:
2 Impulsive условие прочитать можно, или я пропустила тот момент, когда задания раздавались? 

Если назначен специальный человек для контроля за чистотой исходной информации, то найдется изобратательный идиот, который придумает способ, чтобы неправильная информация прошла этот контроль.
Множества.
#1
Вычислить значение отношений:
['a','b']=['b','a']
паскаль
#1
Вычислить значение отношений:
['a','b']=['b','a']
паскаль
-
- Сообщения: 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.
Если назначен специальный человек для контроля за чистотой исходной информации, то найдется изобратательный идиот, который придумает способ, чтобы неправильная информация прошла этот контроль.