Вопрос задан 09.04.2021 в 22:53. Предмет Информатика. Спрашивает Найдякина Оля.

Вводится последовательность целых ненулевых чисел, 0 - конец последовательности. Определить,

сколько раз последовательность поменяет знак. Ограничения! Нельзя использовать условный оператор (If) и оператор выбора (Case). Интерфейс программы должен выглядеть следующим образом: Введите последовательность целых чисел через пробел. Последним введите число нуль. -> -1 -2 3 6 -5 -7 8 9 0 Последовательность меняет знак 3 раз(а).
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Шагаев Максим.

var

 x1, x2, count: integer;


begin

 Writeln('Введите последовательность целых чисел через пробел,');

 Writeln('последним введите число нуль:');

 Read(x1);

 while x1 <> 0 do

 begin

   Read(x2);

   while x1 * x2 < 0 do

   begin

     inc(count);

     break

   end;

   x1 := x2;

 end;

 Write('последовательность меняет знак ',count, ' раз');

 Readln;

end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения этой задачи можно воспользоваться тем фактом, что знак числа меняется, когда произведение текущего числа и предыдущего числа отрицательно. Таким образом, мы можем просто производить умножение на каждой итерации и подсчитывать количество раз, когда произведение становится отрицательным.

Вот пример кода на языке Python, который решает данную задачу:

python
product = 1 sign_changes = 0 print("Введите последовательность целых чисел через пробел. Последним введите число нуль.") while True: num = int(input()) if num == 0: break if product * num < 0: sign_changes += 1 product = num print("Последовательность меняет знак", sign_changes, "раз(а).")

Здесь переменная product хранит произведение предыдущих чисел, а переменная sign_changes отслеживает количество смен знака. Мы считываем ввод пользователя до тех пор, пока не встретим число 0. На каждой итерации мы проверяем, поменялся ли знак при умножении текущего числа на произведение предыдущих чисел. Если да, то увеличиваем sign_changes на 1. В конце выводим результат на экран.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос