Вопрос задан 19.07.2023 в 03:43. Предмет Информатика. Спрашивает Ахмеров Азат.

ПАСКАЛЬ! ПОМОГИТЕ! С циклом WHILE (без массива!) Вводится последовательность из N целых чисел,

отличных от нуля. Определить, сколько раз последовательность меняет знак.
0 0
Перейти к ответам

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

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

Ответ:

Program test;

var a,b,count:integer;

   str : string;

 

begin

 writeln('Для остановки введите СТОП');

 

 while true do

   

 begin

   writeln('Введите число');

   readln(str);

   if (str = 'СТОП') then break;

   a := StrToInt(str);

   if ((a>0) and (b<0)) or ((a<0) and (b>0)) then count := count + 1;;

   b := a;

   

 end;

 writeln('В последовательности знак был поменян ' + count + ' раз.');

end.

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

Конечно! Я могу помочь вам написать программу на языке Паскаль, используя цикл while, чтобы определить, сколько раз последовательность меняет знак. Вот пример решения:

pascal
program CountSignChanges; var N, number, previousNumber, signChanges: Integer; begin signChanges := 0; // Инициализируем счетчик смен знака previousNumber := 0; // Инициализируем предыдущее число writeln('Введите количество чисел N:'); readln(N); writeln('Введите последовательность из ', N, ' чисел:'); while N > 0 do begin readln(number); if (number > 0) and (previousNumber < 0) then signChanges := signChanges + 1 else if (number < 0) and (previousNumber > 0) then signChanges := signChanges + 1; previousNumber := number; // Сохраняем текущее число как предыдущее N := N - 1; // Уменьшаем счетчик оставшихся чисел end; writeln('Количество смен знака: ', signChanges); end.

В этой программе мы считываем количество чисел N и последовательность N целых чисел. Затем мы инициализируем счетчик signChanges для отслеживания количества смен знака и переменную previousNumber, чтобы хранить предыдущее число. Затем мы используем цикл while для чтения каждого числа из последовательности. Если текущее число и предыдущее число имеют разные знаки, мы увеличиваем счетчик signChanges. После этого мы обновляем предыдущее число и уменьшаем счетчик N. В конце программы выводится количество смен знака.

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

0 0

Похожие вопросы

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

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

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