Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 11.12.2009, 22:19   #1
Julia13
Новичок
Джуниор
 
Регистрация: 29.11.2009
Сообщений: 1
По умолчанию Вставить число в массив

Нужно найти и исправить ошибку в задаче.
Условие:Задан некоторый одномерный массив. Вставить число N после всех элементов
массива, кратных трём.
Я решила ее так:
Program PR1;
Uses Crt;
type mas=array [1..10*2] of integer;
var i,j,k,n,p:integer;
a:mas;

Begin
Clrscr;
writeln('Vvedite chislo elementov');
readln(n);
writeln('Vvedite masssiv');
for i:=1 to n do
readln(a[i]);
writeln('Vvedite chislo');
readln(p);

k:=0;
for i:=n downto 1 do
begin
if a[i] mod 3 = 0 then
begin
for j:=n+k downto i+1 do
begin
a[j+1]:=a[j];
a[i+1]:=p;
inc(k);
end;
end;

end;
for i:=1 to n+k do
write(a[i]:3);
readln;
End.
Julia13 вне форума
Старый 12.12.2009, 10:58   #2
diliana
Форумчанин
 
Аватар для diliana
 
Регистрация: 24.05.2009
Сообщений: 119
По умолчанию

Код:
program Project_massiv_mod3_vstavka;
Const
  n = 10;

Type
  myarray = Array[1.. 2*n] Of Integer;
Var
  A : myarray;
  x_element, k, i :Integer;
{x_element - вставляемое число,
k - количество вставленных элементов}

{процедура заполнения массива случайными числами}
Procedure Init2(Var m: myarray);
....................

{процедура вывода (распечатки) массива }
Procedure Print1(n1: Integer; m: myarray);
........................

Procedure Insert3(k1, x_element1: Integer; Var m: myarray);
Var
  i : Integer;
Begin
{сдвиг элементов на одну позицию назад,
n+k- это номер последнего элемента в данный момент}
  For i:= n+k Downto k1+1 Do
  m[i+1]:= m[i];
  m[k1+1]:= x_element1; {вставка элемента на место - после k1-го}
  Inc(k); {увеличение счётчика вставленных элементов }
End;


Begin
...........
  Writeln(' Введите вставляемое число');
  Readln(x_element);
  k:= 0;
  For i:= n Downto 1 Do
  If A[i] Mod 3=0 Then Insert3 (i, x_element, A);
{если число, кратное трём тогда вставить после этого элемента.}
.................
{вывод массива после вставки в него всех элементов}

  Readln;
End.
diliana вне форума
Старый 08.01.2012, 16:46   #3
ko2
Новичок
Джуниор
 
Регистрация: 08.01.2012
Сообщений: 1
Сообщение Вот моё решение к этой задаче

uses crt;
const n=10;s=21;
Type mt=array[1..2*n] of integer;
var a:mt;i,i1,b:integer;
begin
b:=0;
randomize;
for i:=1 to n do a[i]:=-10+random(s);
for i:=1 to n do write(a[i],' ');
writeln;

for i:=n+b downto 1 do
if (a[i]<>0)and(a[i]mod 3=0) then begin
inc(b);
for i1:=n+b downto i+1 do
a[i1+1]:=a[i1];
a[i+1]:=100;
end;

for i:=1 to n+b do write(a[i],' ');
end.

Задача была набрана на Pascal'е. Работоспособность 100%.
ko2 вне форума
Старый 08.01.2012, 16:51   #4
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

Работоспособность 100%.

Актуальность 0%
Ох, уж эти некропостеры... LOL
Rififi вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вставить число после всех элементов массива, кратных 3 Mclaren Помощь студентам 0 10.11.2009 02:40
Си++. Вставить в массив элемент в нужную строку hen Помощь студентам 10 08.06.2009 22:27
Паскаль. Вставить в массив элемент со сдвигом всех остальных элементов Yulya Помощь студентам 1 31.03.2009 10:53
Как вставить число в строку? nec117 Общие вопросы C/C++ 2 18.10.2008 00:41
Подскажите,плиз, как вставить один массив в другой Paige Hollivel Паскаль, Turbo Pascal, PascalABC.NET 3 01.07.2008 10:21