• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о проекте, чтобы узнать больше. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Паскаль. Не получается вывод

Натуличка

Новые
Регистрация
6 Фев 2012
Сообщения
46
Реакции
0
Баллы
0
Паскаль. Не получается вывод

у меня явные проблемы с ввыводом! я честно признаюсь не понимаю как его надо делать т.к в разных задачах по-разному: вот и сейчас.
В линейном массиве целых чисел удалить из массива элемент равный заданному числу d/ полученный массив вывести на эуран.
поскольку эта задача на удаление, то получаются, что мой массив смещается на 1 ячейку илм же нет в зависимости от условия. я должна вывводить
writeln ('a=, i' a);
 
я так тоже пробывала....( безуспешно (спасибо все равно)
 

Вложения

  • Examp_1.webp
    Examp_1.webp
    4.1 KB · Просмотры: 48
writeln('a[',i,']= ',a);[/QUOT
почему так? вот моё решение:
var a: array [1..50] of integer;
i,n,d,j:integer;
begin
writeln ('ввод кол-ва эл мас');
readln (n);
writeln ('ввод эл мас');
for i:=1 to n do
readln(a);
writeln ('ввод заданного числа');
readln (d);
for i:=1 to n do
if a=d then
begin
j:=i;
j:i+1;
end;
for i:=j to n-1 do
a:=a[i+1];
writeln
readln
end.
 
М-да... Боюсь, смысл ниже приведенного фрагмента навсегда останется тайной создавшего его программиста.
for i:=1 to n do
if a=d then
begin
j:=i;
j:i+1;
end;

Ладно, не буду заниматься демагогией. Я бы на свой вкус предложил такое решение:
Код:
var
 a: array [1..50] of integer;
 i,n,d,j:integer;
begin
 write('ввод кол-ва эл мас ');
 readln(n);
 writeln ('ввод эл мас');
 for i:=1 to n do
  begin
   write('a[',i:2,']= ');
   readln(a[i]);
  end;
 writeln;
 for i:=1 to n do write(a[i]:4);
 writeln;
 writeln;
 write('ввод заданного числа ');
 readln(d);
 for i:=1 to n do
  if a[i]=d then
   begin
    for j:=i to n-1 do a[j]:=a[j+1];
    dec(n);
   end;
 writeln;
 for i:=1 to n do write(a[i]:4);
 readln
end.
 
Назад
Сверху