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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.12.2008, 14:18   #1
Маськ@
Пользователь
 
Регистрация: 07.12.2008
Сообщений: 11
Стрелка Задачки на массивы

1) Дан массив целых чисел. Найти индексы тех элементов, значения которых больше значения предыдушего элемента (начиная со второго).
2) Определить есть ли в данном массиве два соседних отрицательных элемента? Найти номера первой (последней) пары.
3) Дан массив, состоящий из N-натуральных чисел. Образовать новый массив, элементами которого будут элементы исходного, оканчивающиеся на цифру k.

Помогите, народ, буду весьма признательна
Маськ@ вне форума Ответить с цитированием
Старый 20.12.2008, 14:35   #2
Викдон
Форумчанин
 
Аватар для Викдон
 
Регистрация: 11.11.2008
Сообщений: 161
По умолчанию

1)
Код:
var mas:array[1..20] of integer;
      i:integer;
begin
 for i:=1 to 20 do
  begin
    write('Введите ',i,' элемент');
    readln(mas[i]);
  end;
 for i:=2 to 20 do
  if mas[i]>mas[i-1] then
   writeln('индекс=',i);

readln;
end.
Викдон вне форума Ответить с цитированием
Старый 20.12.2008, 14:52   #3
Викдон
Форумчанин
 
Аватар для Викдон
 
Регистрация: 11.11.2008
Сообщений: 161
По умолчанию

3)
Код:
var mas:array[1..20] of integer;
      mas2:array[1..20] of integer;
      i,j,k:integer;
begin
 for i:=1 to 20 do
  begin
    write('Введите ',i,' элемент');
    readln(mas[i]);
  end;

write('Введите к: ');
readln(k);
 for i:=1 to 20 do
  if mas[i] mod 10 =k then
   begin
     inc(j);
     mas2[j]:=mas[i];
  end;

writeln('Новый массив: ');
 for i:=1 to j do
  write(mas2[i],' ');


readln;
end.
Викдон вне форума Ответить с цитированием
Старый 20.12.2008, 14:55   #4
Костя КС
Пользователь
 
Аватар для Костя КС
 
Регистрация: 22.01.2008
Сообщений: 78
По умолчанию

2)
Код:
program mas;
const n = 10;
var
 M : array [1..n] of integer;
 i : integer;
 i1 : integer;
 i2 : integer;
begin
 for  i := 1 to n do
 begin
  write('M[',i,']=');
  read(M[i]);
 end;
writeln(' ');

  i1 := 0;
  i2 := 0;
 for i:=1 to n-1  do
 begin
  if (M[i]<0)and(M[i+1]<0) then
  begin
   if i1> 0 then i2 := i else i1:=i;
   end;
 end;
 if i1> 0 then writeln('первая ',i1,' ',i1+1) else writeln('нет пар');
 if i2> 0 then writeln('последняя ',i2,' ',i2+1);
 end.

Последний раз редактировалось Костя КС; 20.12.2008 в 15:01.
Костя КС вне форума Ответить с цитированием
Старый 20.12.2008, 15:26   #5
Викдон
Форумчанин
 
Аватар для Викдон
 
Регистрация: 11.11.2008
Сообщений: 161
По умолчанию

2)
Код:
Const n=20;
var mas:array[1..n] of integer;
       i:integer;
      j,u:integer;
begin
 for i:=1 to n do
  begin
    write('Введите ',i,' элемент');
    readln(mas[i]);
  end;

 for i:=1 to n-1 do    {Нахождение первой пары}
  if (mas[i]<0) and (mas[i+1]<0) then  
   begin
     j:=i;
     break;
   end;

 for i:=n downto 2 do  {Нахождение последней пары}
  if (mas[i]<0) and (mas[i-1]<0) then
   begin
     u:=i;
     break;
   end;

if (u<>0) then
 begin
  writeln('Первая пара: ',j,j+1);
  writeln('Последняя пара: ',u-1,u);
 end
else
 writeln('Нет таких пар!');
readln;
end.
Викдон вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задачки на массивы. Большая просьба помочь tohkaRu Паскаль, Turbo Pascal, PascalABC.NET 9 08.12.2008 23:31
Пожалуйста помогите решить 4 задачки на массивы и оператор цикла. alena-yalymova Паскаль, Turbo Pascal, PascalABC.NET 8 05.04.2008 22:21
Задачки на матрицы и массивы Dibox Помощь студентам 1 18.12.2007 06:46