Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 13.10.2010
Сообщений: 12
1

Найти в массиве подряд идущие элементы, удовлетворяющие условию

22.01.2011, 22:10. Показов 1370. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите пожалуйсто решить задачку, не могу сообразить


Создать 2 целочисленных массива X[1..n] и Y[1..k]. Можно ли в первом из них выбрать такие k идущих подряд элементов X[ i+1 ], X[ i+2 ], . . . ,X[ i+k ], чтобы X[ i+1 ]=Y[1],
X[ i+2 ]=Y[2], . . . ,X[ i+k ]=Y[ k ]. Написать программу, которая дает ответ 'да' и выводит начальный индекс в массиве Х (т.е. i+1) или дает ответ 'нет'.

Заранее спасибо!
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.01.2011, 22:10
Ответы с готовыми решениями:

В массиве A=(a1, а2, ..., аn) удалить все подряд идущие отрицательные элементы, идущие вслед за минимальным элементом массива.
Помогите написать на паскале программу для: В массиве A=(a1, а2, ..., аn) удалить все подряд...

Найти в массиве подряд идущие элементы
//--------------------------------------------------------------------------- #include <vcl.h>...

В массиве удалить все подряд идущие отрицательные элементы
В массиве A=(a1, а2, ..., аn) удалить все подряд идущие отрицательные элементы, идущие вслед за...

Найти в массиве подряд идущие 0
Здравствуйте, нужна помощь. Есть массив из 0, нужно в массиве найти подряд идущие к примеру 4 или 3...

1
180 / 180 / 81
Регистрация: 18.12.2010
Сообщений: 346
23.01.2011, 08:48 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

вот так как-то можно..
Pascal
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
const
  n= 30;
  k= 2;
var
  i,j: integer;
  x: array [1..n] of integer;
  y: array [1..k] of integer;
 
begin
  Randomize;
  for i:=1 to n do x[i]:= Random(10);
  for i:=1 to k do y[i]:= Random(10);
  writeln('x:');
  for i:=1 to n do write(x[i]:3);
  writeln;
  writeln('y:');
  for i:=1 to k do write(y[i]:3);
  writeln;
  i:= -1;
  j:= 0;
  while (i+k<n) and (j<=k) do begin
    inc(i);
    j:= 0;
    repeat
      inc(j)
    until (j>k) or (x[i+j]<>y[j])
  end;
  if j>k then writeln('yes, ',i) else writeln('no');
  readln
end.
Я не понял, может ли i быть равным 0. В этом варианте я считаю, что может. Если нет - замени "i:=-1;" на "i:=0;" (строка 19).
1
23.01.2011, 08:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.01.2011, 08:48
Помогаю со студенческими работами здесь

Проверить, есть ли в массиве X идущие подряд элементы, совпадающие с содержимым массива Y
Даны два целочисленных массива Х и Y. Можно ли в первом из них выбрать такие k идущих подряд...

В заданном массиве вывести на консоль все элементы, удовлетворяющие условию
Дан целочисленный массив А размера 10. Вывести элементы массива Ак, которые удовлетворяют двойному...

Найти в массиве все последовательности удовлетворяющие условию
Найти количество всех последовательностей из 0 и 1, где после 1 всегда идёт 0 (пример 101010101,...

Найти элементы массива, удовлетворяющие условию a<P(i)<b
Дан массив P(n), состоящий из N вещественных чисел.Найти элементы массива, удовлетворяющие условию...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru