0 / 0 / 0
Регистрация: 28.05.2011
Сообщений: 12

Вставить число k после всех элементов массива, кратных своему индексу.

28.05.2011, 13:39. Показов 1962. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет!
Не могу решить задачу.Вставить число k после всех элементов массива, кратных своему индексу.

Заранее спасибо!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.05.2011, 13:39
Ответы с готовыми решениями:

Вставить в массив число К после всех элементов, кратных своему номеру
Дан массив целых чисел из n элементов, заполненный случайным образом числами из промежутка . Вставить число К после всех элементов,...

Вставить число k после всех элементов массива, кратных своему номеру
дан массив чисел из 15 элементов,заполненных случайным образом числами из промкжутка 1)вставить число k после всех элементов,кратных...

Вставить число k после всех элементов массива, кратных своему номеру
Дан массив целых чисел (n=15), заполненный случайным образом числами из промежутка . Вставить число k после всех элементов, кратных своему...

15
 Аватар для вумудщзук
64 / 64 / 10
Регистрация: 19.05.2010
Сообщений: 198
28.05.2011, 14:36
Delphi
1
2
3
4
for i:= 0 to length(mas)-1 do
  begin
    if mas[i] mod i =0 then mas[i]:=mas[i]+k;
  end;
0
0 / 0 / 0
Регистрация: 28.05.2011
Сообщений: 12
28.05.2011, 14:47  [ТС]
Он просто прибавляет к элементам.А мне в вставить между элементами.
0
 Аватар для вумудщзук
64 / 64 / 10
Регистрация: 19.05.2010
Сообщений: 198
28.05.2011, 15:41
Щас свое проверю через 10 мин, тебе отвечу

Добавлено через 32 минуты
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
for i:= 1 to length(mas) do
  begin
    if mas[i] mod i =0 then
      begin
        setlength(mas, length(mas)+1);
        for j := length(mas) downto i+2 do
          begin
            mas[j]:=mas[j-1];
          end;
        mas[i+1]:=k;
      end;
  end;
2
0 / 0 / 0
Регистрация: 28.05.2011
Сообщений: 12
28.05.2011, 16:18  [ТС]
В строке setlength(mas, length(mas)+1); - incompatible types
0
 Аватар для вумудщзук
64 / 64 / 10
Регистрация: 19.05.2010
Сообщений: 198
28.05.2011, 16:36
Сделай массив динамическим.
0
0 / 0 / 0
Регистрация: 28.05.2011
Сообщений: 12
28.05.2011, 16:39  [ТС]
Это как? Я просто нуб вот что у меня есть:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
program Project1;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
const
  n=5;
var
  a:array[1..2*n] of integer;
  i,j,kol,k:integer;
 
begin
 
kol:=n;
  k:=10;
 
  writeln('Vvedite massiv');
    For i:=1 to kol do
      readln(a[i]);
 
  For i:=1 to kol do
  If (a[i] mod i=0) then
    begin
      inc(kol);
        For j:=kol downto i+1 do
        a[j]:=a[j-1];
        a[i+1]:=k;
 
     end;
 
   For i:=1 to kol do
    write(a[i]:5);
 
  readln;
end.
Но она не правильно работает.
0
 Аватар для Gelo
47 / 47 / 21
Регистрация: 30.04.2009
Сообщений: 119
28.05.2011, 16:42
incompatible types
Если переменная mas типа string то в setlength нет необходимости.

Добавлено через 3 минуты
Чтобы задать динамический то вместо
Delphi
1
a:array[1..2*n] of integer;
необходимо писать
Delphi
1
a:array of integer;
но перед формированием массива задавать его размерносеь:
Delphi
1
setlength(a,n)
Где n - размер массива.
1
0 / 0 / 0
Регистрация: 28.05.2011
Сообщений: 12
28.05.2011, 16:56  [ТС]
Не хочет:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
program Project2;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
 
const
  n=2;
var
  A:array of integer;
  i,k,j:integer;
begin
  k:=10;
  setlength(a,n);
 
  writeln('vvedite massiv');
    for i:= 1 to length(a) do
      readln(A[i]);
 
  for i:= 1 to length(a) do
  begin
    if a[i] mod i =0 then
      begin
        setlength(a, length(a)+1);
        for j := length(a) downto i+2 do
          begin
            a[j]:=a[j-1];
          end;
        a[i+1]:=k;
      end;
  end;
 
    for i:=1 to length(a) do
    write(A[i],' ');
 
  readln;
end.
0
 Аватар для Gelo
47 / 47 / 21
Регистрация: 30.04.2009
Сообщений: 119
28.05.2011, 17:23
Delphi
1
for i:= 1 to length(a) do
Нумерация элементов массива начинается с нуля, следовательно должно быть так:
Delphi
1
for i:= 0 to length(a)-1 do
Добавлено через 12 минут
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
  A:array of integer;
  i,k,j:integer;
begin
  k:=10;
  setlength(a,2);
 
    for i:= 0 to length(a)-1 do
      readln(A[i]);
 
  for i:= 0 to length(a)-1 do
  begin
    if a[i] mod (i+1) =0 then
      begin
        setlength(a, length(a)+1);
        for j := length(a)-1 downto i+2 do
          begin
            a[j]:=a[j-1];
          end;
        a[i+1]:=k;
      end;
  end;
 
    for i:=1 to length(a) do
    write(A[i],' ');
 
  readln;
 
end;
Это рабочий вариант, он в анализ включает также то число, которое добавляется (к=10).
0
0 / 0 / 0
Регистрация: 28.05.2011
Сообщений: 12
28.05.2011, 17:33  [ТС]
Вот что получилось.Я ввожу 1 2 3 4 5, выходит 1 10 10 2 3 4 5 0. Но ни как ни 1 10 2 10 3 10 4 10 5 10
0
 Аватар для Gelo
47 / 47 / 21
Регистрация: 30.04.2009
Сообщений: 119
28.05.2011, 18:10
Обязательно все производить в одном массиве?
0
0 / 0 / 0
Регистрация: 28.05.2011
Сообщений: 12
28.05.2011, 18:17  [ТС]
Нет не обязательно.
0
 Аватар для Gelo
47 / 47 / 21
Регистрация: 30.04.2009
Сообщений: 119
28.05.2011, 18:18
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 A,b:array of integer;
  i,k,j:integer;
begin
  k:=10;
  setlength(a,5);
  setlength(b,5);
 
    for i:= 0 to length(a)-1 do
      A[i]:=i+1;
  j:=0;
  for i:=0 to length(a)-1 do
  begin
    if a[i] mod (i+1) =0 then
      begin
        setlength(b, length(b)+1);
        b[j]:=a[i]; inc(j); b[j]:=k; inc(j);
  end
  else begin b[j]:=a[i]; inc(j); end;
  end;
 
    for i:=1 to length(b) do
    write(b[i],' ');
 
  readln;
 
end;
Предыдущий код был актуален лишь для массива из 2х чисел.
1
0 / 0 / 0
Регистрация: 28.05.2011
Сообщений: 12
28.05.2011, 18:25  [ТС]
Я так понял что она ставить k на место тех элементов которые не кратны?
И можно объяснить как она работает?
0
 Аватар для Gelo
47 / 47 / 21
Регистрация: 30.04.2009
Сообщений: 119
28.05.2011, 18:38
В массиве "а" исходное множество.
Проверяем его, если выполняется условие то увеличиваем размерность массива b на 1 и записываем в него текущий элемент из массива а, затем записываем число к.
Если условие не выполняется то размерность массива b не увеличиваем, записываем в него текущий элемент массива а.
Выводим массив b
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.05.2011, 18:38
Помогаю со студенческими работами здесь

Вставить число к после всех элементов, кратных своему номеру
Здравствуйте.Помогите, пожалуйста, решить. Срочно!!! Дан массив целых чисел (п = 15), заполненный случайным образом числами из ...

Вставить число К после всех элементов, кратных своему номеру
10.Дан массив случайных целых чисел из отрезка . Вставить число К после всех элементов, кратных своему номеру (К вводится с клавиатуры).

Вставить число «25» после элементов, кратных своему номеру
Пожалуйста, помогите решить задачу!!!:help: Решение задач с использованием одномерных массивов. Вставить число «25» после элементов,...

Вставить число К после элементов,кратных своему номеру.
Дан массив.Вставить число К после элементов,кратных своему номеру.

В одномерном массиве вставить новый элемент после всех элементов, кратных своему номеру
В одномерном массиве, элементы которого-целые числа, произвести следующ. действия: вставить новый элемент после всех элементов, кратных...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Опции темы

Новые блоги и статьи
Шаблоны и протоколы для создания устойчивых микросервисов
ArchitectMsa 19.04.2025
Микросервисы — архитектурный подход, разбивающий сложные приложения на небольшие, независимые компоненты. Вместо монолитного гиганта, система превращается в созвездие небольших взаимодействующих. . .
Изменяемые и неизменяемые типы в Python
py-thonny 19.04.2025
Python славится своей гибкостью и интуитивной понятностью, а одна из главных его особенностей — это система типов данных. В этом языке все, включая числа, строки, функции и даже классы, является. . .
Интеграция Hangfire с RabbitMQ в проектах C#.NET
stackOverflow 18.04.2025
Разработка современных . NET-приложений часто требует выполнения задач "за кулисами". Это может быть отправка email-уведомлений, генерация отчётов, обработка загруженных файлов или синхронизация. . .
Построение эффективных запросов в микросервисной архитектуре: Стратегии и практики
ArchitectMsa 18.04.2025
Микросервисная архитектура принесла с собой много преимуществ — возможность независимого масштабирования сервисов, технологическую гибкость и четкое разграничение ответственности. Но как часто бывает. . .
Префабы в Unity: Использование, хранение, управление
GameUnited 18.04.2025
Префабы — один из краеугольных элементов разработки игр в Unity, представляющий собой шаблоны объектов, которые можно многократно использовать в различных сценах. Они позволяют создавать составные. . .
RabbitMQ как шина данных в интеграционных решениях на C# (с MassTransit)
stackOverflow 18.04.2025
Современный бизнес опирается на множество специализированных программных систем, каждая из которых заточена под решение конкретных задач. CRM управляет отношениями с клиентами, ERP контролирует. . .
Типы в TypeScript
run.dev 18.04.2025
TypeScript представляет собой мощное расширение JavaScript, которое добавляет статическую типизацию в этот динамический язык. В JavaScript, где переменная может свободно менять тип в процессе. . .
Погружение в Kafka: Концепции и примеры на C# с ASP.NET Core
stackOverflow 18.04.2025
Apache Kafka изменила подход к обработке данных в распределенных системах. Эта платформа потоковой передачи данных выходит далеко за рамки обычной шины сообщений, предлагая мощные возможности,. . .
Коммуникация в реальном времени с SignalR в C# на примере создания чата
UnmanagedCoder 17.04.2025
Современный веб стремительно эволюционирует от статичных страниц к динамичным приложениям, где пользователи ожидают мгновенной реакции на свои действия. Представим, что вы отправляете сообщение. . .
Реализация CQRS с MediatR на C# .NET
stackOverflow 17.04.2025
Современная разработка программного обеспечения постоянно ищет пути повышения эффективности организации кода. Архитектурные паттерны появляются, эволюционируют, и те, что проявляют свою. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru