База ответов ИНТУИТ

Решение олимпиадных задач по информатике

<<- Назад к вопросам

Фрагмент программы на Паскале проверяет - простое ли число n, введенное с клавиатуры, он не правильный. Укажите возможные правильные варианты.

…...k:=0;for i:=1 to n-1 do if n mod i=0 then k:=k+1;if k=2 then writeln ('число простое')else writeln ('число составное');…

(Ответ считается верным, если отмечены все правильные варианты ответов.)

Варианты ответа
неверно находится число делителей. Правильно: k:=k+i
неверно записана команда ветвления. Правильно - в одну строку
неверна проверка количества числа делителей. Правильно: if k=1 then writeln ('число простое')(Верный ответ)
неверно конечное значение заголовка цикла. Правильно: for i:=1 to n do(Верный ответ)
Похожие вопросы

Фрагмент программы на Паскале проверяет - совершенное ли число n, введенное с клавиатуры. Выберите все варианты, которые помогут исправить в нем ошибку:

…for i:=1 to n do if n mod i=0 then k:=k+i;if k=n then writeln ('число совершенное')else writeln ('число несовершенное');…
Укажите, какой фрагмент программы на Паскале проверяет - простое ли число N, введенное с клавиатуры:
В переменную n с клавиатуры вводится значение n=137. Предскажите результат работы программы (что выведется на экран):
…k:=0;for i:=2 to n-1 do if n mod i=0 then k:=k+1;if k=2 then writeln ('простое')else writeln ('составное');…
Укажите, какой фрагмент программы на Паскале проверяет - совершенное ли число n, введенное с клавиатуры:

Что делает приведенная ниже программа на Паскале:

var a: string;b, i, j, st, n, s, x, k: integer;beginwriteln ('введите число'); readln (a); n:=length(a); s:=0; for i:=1 to n do  begin  val (copy(a,n-i+1,1),x,k); st:=1;  for j:=1 to n do st:=st*x;  s:=s+st;  end; val (a, x, k); if s=x then writeln ('+') else writeln ('-');end.

В переменную n с клавиатуры вводится значение (n=6). Предскажите результат работы программы (что выведется на экран):

…k:=0;for i:=1 to n-1 do if n mod i=0 then k:=k+i;if k=n then writeln ('совершенное')else writeln ('несовершенное');…

В результате выполнения программы на Паскале, фрагмент которой приведен ниже, произойдет выборка элементов из исходного массива А={1, 2, 3}.

… for i:=1 to n dofor j:=i to n do writeln (A[i], A[j]); …
Введите результат вывода программы без пробелов:

Фрагменты программ на Паскале реализуют алгоритмы формирования таких комбинаторных групп, как:

  • ...for i:=1 to n-1 dofor j:=i+1 to n do writeln (A[i], A[j]); 
  • ...for i:=1 to n dofor j:=i to n do writeln (A[i], A[j]); 
  • …for i:=1 to n dofor j:=1 to n do if i<>j then writeln (A[i], A[j]);
  • …for i:=1 to n dofor j:=1 to n do writeln (A[i], A[j]);
  • Предскажите, какое содержимое будет находится в переменной s в результате работы программы на Паскале:

    var a, b, s, x: integer;begina:=25; b:=5; s:=0;while a<>0 dobeginx:=a mod b; s:=s*10 +x; a:=a div b;writeln (s);end;end.

    Каков будет результат выполнения программы на Паскале, если с клавиатуры вводится слово "Ротор":

    var 	a:string; k,n,i: integer;begin readln (a); k:=0; n:=length(a); for i:=1 to n do  if copy(a,i,1) <> copy(a,n-i+1,1) then k:=k+1;writeln (k);end.