• Предмет: Информатика
  • Автор: ksyusnakotova
  • Вопрос задан 8 лет назад

паскаль АВС.net .
Дано одномерный массив длиной n. "сжать "его , изъяв все отрицательные элементы.

Ответы

Ответ дал: Аноним
0
// PascalABC.NET 3.2, сборка 1389 от 01.03.2017
// Внимание! Если программа не работает, обновите версию!

begin
  var a:=ReadArrInteger('Вводите',ReadInteger('n='));
  a:=a.Where(x->x>=0).ToArray; a.Println
end.

Пример
n= 5
Вводите 3 -2 0 -1 5 8
3 0 5

То же, в терминах Pascal ABC ("по-школьному")

const
  k=50;
var
  n,i,m:integer;
  a,t:array[1..k] of integer;
begin
  Write('n='); Read(n);
  Write('Вводите: ');
  for i:=1 to n do Read(a[i]);
  m:=0;
  for i:=1 to n do
    if a[i]>=0 then begin
      m:=m+1;
      t[m]:=a[i]
      end;
  n:=m;
  for i:=1 to n do begin
    a[i]:=t[i];
    Write(a[i],' ')
    end;
  Writeln
end.

Думаю, есть о чем подумать: почему в школе учат писать длинно и сложно?
Ответ дал: Аноним
0
Иметь собственное мнение - похвально. Но нужно также уметь его менять в тех случаях, когда оно неверно. А не биться за него каждый раз насмерть.
Ответ дал: Аноним
0
А ничего, что кроме "слабого" сюда придут по ссылкам из поисковых систем другие и будут это решение "для слабых" читать? Мы должны стараться быть своего рода эталоном, показывающим, как надо решать задачи, а не как их написать лишь с целью, чтобы троечник "спихнул" учителю.
Ответ дал: DeSex
0
На этот раз вроде бы и не торопился, все просмотрел (но наверняка, как всегда что-нибудь просмотрел)))), и кажется мне, что "школьное" решение уважаемого Эникея не удовлетворяет поставленной задаче (боюсь, что опять придется извиняться, но все же рискну).
Из массива не удалены все отрицательные элементы. Их не видно, потому что распечатывается не весь массив. На первом скане видно, что при вводе массива (-1,-2,3,4,-5) элементы 4 и -5 остались на своих местах, просто они не выводятся на печать. Вот поэтому я считаю, что это решение некорректно, поставленная задача не выполнена.
Свой вариант решения привожу на втором скане.
Приложения:
Ответ дал: DeSex
0
Хвост же не отрублен, а обнулен. Значит, решение не верное. Баллы мне не нужны, титулы тоже. Багаж знаний пополнил. это главное.
Ответ дал: Аноним
0
Может, модератор решит послать задание на исправление...
Ответ дал: Аноним
0
И если за неделю не исправите - удалится само.
Похожие вопросы