• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о форуме и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Задача на Паскале

Максим-2804

Ученик
Регистрация
13 Май 2011
Сообщения
3
Реакции
0
Баллы
0
Задача на Паскале

Имеется последовательность чисел, содеpжащая n элементов.
Опpеделить, сколько pаз в ней меняется знак.
 
Имеется последовательность чисел, содеpжащая n элементов.
Опpеделить, сколько pаз в ней меняется знак.
Код:
uses crt;
const
 n=10;
var
 i,T:integer;
 a:array [1..n] of integer;

function Sign(s:integer):integer;
begin
 if s<0 then Sign:=-1 else Sign:=1;
end;

begin
 clrscr;
 randomize;
 for i:=1 to n do
  begin
   repeat
    a[i]:=10-random(21);
   until a[i]<>0;
   write(a[i]:5);
  end;
 writeln;
 T:=0;
 for i:=1 to n-1 do
  if Sign(a[i])<>Sign(a[i+1]) then Inc(T);
 writeln('Sign changes ',T,' times');
 readln;
end.
 
Назад
Сверху