Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Паскаль. Не получается вывод (http://www.tehnari.ru/f41/t75467/)

Натуличка 27.06.2012 22:22

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

Vladimir_S 27.06.2012 22:27

Цитата:

Сообщение от Натуличка (Сообщение 755680)
writeln ('a[i]=, i' a[i]);

writeln('a[',i,']= ',a[i]);

Натуличка 27.06.2012 22:32

я так тоже пробывала....( безуспешно (спасибо все равно)

Vladimir_S 27.06.2012 22:45

Вложений: 1
Цитата:

Сообщение от Натуличка (Сообщение 755688)
я так тоже пробывала....( безуспешно (спасибо все равно)

Код:

Var
 a:Array[1..9] of Byte;
 i:Byte;
Begin
 For i:=1 to 9 do a[i]:=i*i;
 For i:=1 to 9 do Writeln('a[',i,']= ',a[i]:2);
 Readln
End.


Натуличка 27.06.2012 22:50

[QUOTE=Vladimir_S;755685]writeln('a[',i,']= ',a[i]);[/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[i]);
writeln ('ввод заданного числа');
readln (d);
for i:=1 to n do
if a[i]=d then
begin
j:=i;
j:i+1;
end;
for i:=j to n-1 do
a[i]:=a[i+1];
writeln
readln
end.

Vladimir_S 28.06.2012 09:57

М-да... Боюсь, смысл ниже приведенного фрагмента навсегда останется тайной создавшего его программиста.
Цитата:

Сообщение от Натуличка (Сообщение 755703)
for i:=1 to n do
if a[i]=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.



Часовой пояс GMT +4, время: 22:36.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.