М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
ерик12840
ерик12840
26.06.2021 19:46 •  Информатика

Пусть a = a(x) - некоторое условие, зависящее только от значения переменной x. укажите, чему может быть равно значение переменной y в результате выполнения следующего фрагмента программы: int x = 1; int y = 1; while (a(x)) { . . if (y < 0) { x = 2; y = 10; } else { x = 1; y = 20; } } (отметьте один правильный вариант ответа.) вариант 1 значение y равно 1 или 10. вариант 2 значение y равно 1 или 20. вариант 3 значение y может быть равным любому из чисел 1, 10, 20. вариант 4 значение y не может быть равным любому из чисел 1, 10, 20. ответить прокомментировать прервать

👇
Ответ:
BigRussionBosss
BigRussionBosss
26.06.2021
В языке С/С++ любое ненулевое значение считается истинным.
Цикл с заголовком while (a(x)) выполнятся до тех пор. пока a(x) ненулевое, следовательно, при выходе из цикла a(x)=0.
Первоначально х=1 и если a(1) окажется равным нулю, то тело цикла не выполнится ни разу. В этом случае у будет равен начальному значению, т.е. у=1.
Если же а(1) не равняется нулю, то будет выполняться тело цикла. При у<0 переменная х получает значение 2, у получает значение 10. Мы должны полагать что а(2) ложно и тогда произойдет выход из цикла. Если же это не так, то тело цикла будет выполняться повторно. Ветка при y>=0 дает присваивание х=1, а мы рассматриваем вариант, когда такое значение не приводит к выходу из цикла, следовательно у=20 никогда не будет последним присваиванием значения у. Тогда возможен только вариант ответа 1 (у=1 или 10)
ответ: Вариант 1
4,4(7 оценок)
Открыть все ответы
Ответ:
Аноним9111
Аноним9111
26.06.2021
Program Project1;

var m:array [0..14] of integer; i:integer;

function IsPositive(a:integer):boolean;
begin
  result:=(a>-1);
end;

procedure work;
var min, max, count:integer;
begin
  count:=0;
  min:=m[0];
  max:=0;
  for i:=0 to 14 do begin
    if IsPositive(m[i]) then begin
      inc(count);
      if m[i]>max then max:=m[i];
      if m[i]<min then min:=m[i];
    end;
  end;
  writeln('MAX: ', max);
  writeln('MIN: ', min);
  writeln('Count: ', count);
end;

begin
  for i:=0 to 14 do begin
    write('n: ');
    readln(m[i]);
  end;

  work;

  readln;
end.
4,8(74 оценок)
Ответ:
SemMandarenova
SemMandarenova
26.06.2021
Таких систем исчисления всего две.  Основание а = 9 и основание а =367, но в системе с основанием 367 проблематично записывать числа (символов не хватит).
Если число 3306(10) в системе исчисления с основанием а заканчивается цифрой 3, то тогда
число 3303 делится на основание системы а.
Отсюда алгоритм поиска.  Находим все делители числа 3303.
3303 = 3*1101 = 3*3*367.  Число 367 - простое. Поэтому основаниями системы исчисления 
могут быть только 3, 9, 367.  Основание =3 не подходит, так как по условию число должно заканчиваться на 3  -> основание больше 3.  Остаются 9, 367.
4,6(15 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ