Категория
Информатика, опубликовано 07.06.2020 02:21

Паскаль, Что не так в этой процедуре? Нужно элемент подходящий по условию переставить в конец и при выводе не выводить. Так создаётся эффект удаления элемента.
procedure перестановка;
var
b: string;
begin
writeln('vvod b');
readln(b);
for i: byte := 1 to n-1 do
begin
for j: byte:= 1 to n do
begin
if a[i]=bthen
b:=k10a[j+1];
a[j+1]:=a[j+2];
a[j+2]:=a;
writeln(a[i]);
end;
end;
end;

Ответы

Ответ
Ответ оставил: Гость
Если я правильно понял
Ответ
Ответ оставил: Гость
Алгоритм же элементарный: тупо перебираешь массив с конца, проверяя знак каждого элемента. Вот код:

ОТДЕЛ Задание+;

ПЕР
  x: РЯД 100 ИЗ ЦЕЛ;
  сч, послПолож: ЦЕЛ;

УКАЗ
  послПолож := -1;
  сч := РАЗМЕР(x) - 1;
  ПОВТОРЯТЬ
    ЕСЛИ x[сч] > 0 ТО послПолож := сч КОН;
    УМЕНЬШИТЬ(сч)
  ДО послПолож # -1 ИЛИ сч < 0

КОН Задание.
Ответ
Ответ оставил: Гость
____________________Б
Ответ
Ответ оставил: Гость
Brach is sing got bill


Другие вопросы по информатике

✅ Ответов: 1 на вопрос по информатике: Паскаль, Что не так в этой процедуре? Нужно элемент подходящий по условию переставить в конец и при выводе не выводить. Так создаётся эффект удаления элемента. procedure перестановка; var b: string; begin writeln('vvod b'); readln(b); for i: byte := 1 to n-1 do begin for j: byte:= 1 to n do begin if a[i]=bthen b:=k10a[j+1]; a[j+1]:=a[j+2]; a[j+2]:=... ты найдешь на сайте. Также ты можешь добавить свой вариант ответа, если считаешь, что он не верен или твой ответ более полный. Пожалуйста, добавляй только правильные ответы.
Вконтакте Youtube