Тестирование Pascal Тест №1

В каждой задаче выберите правильный ответ.
Затем нажмите кнопку "Оценить ответ"

Для ответа сервер не нужен - можно отключиться от Интернета
В условиях задач . . . означает пропущенные строки программы.
Правильные ответы помечены ++


Варианты ответа

В {1}
Во всех++
В {1} и {2}
В {1} и {3} и {4}

Задача 1. Условия:

В каких операторах используются допустимые выражения ?:
var m,n: integer; s: char; b: boolean;
. . .
{1} s := chr(byte(b)+byte(m-n));
{2} s := chr(48 + succ((byte(b)+byte(m+n))));
{3} s := char(pred(m*4 > (byte(b)+byte(m*n))));
{4} s := succ(chr(4*byte(not b) + round(m*0.5)));
. . .


Варианты ответа

0++
1
2
3
4
5
6

Задача 2. Условия:

Какое значение получит переменная b после выполнения операторов:
var d: boolean; s: char; b: byte;
. . .
b:= 0; s:= 'a';
for d:= true to false do
  repeat
     s:= pred(s);
     inc(b);
  until s = 'c';
. . .


Варианты ответа

1247
12347++
1123347
Ничего
Программа вызовет
ошибку компиляции

Задача 3. Условия:

Что будет выведено на экран в результате
выполнения операторов (переменные описаны
без ошибок):
. . .
  d:= [1,2..4,7]; v:= d + [1+3]; 
  for b:= 0 to 255 do 
     if b in v then 
       write(b); 
. . .


Варианты ответа

3, 2, 1
1, 2, 3
9, 4, 1
1, 4, 9
Файл будет пустым++
Программа вызовет
ошибку компиляции

Задача 4. Условия:

Определите содержимое файла W после выполнения
следующей программы:
var W: file of integer;  J,N: integer;
begin
assign(W,'ff.dan'); rewrite(W);
for J:= 2 to 1 do
  begin
     N:= sqr(J);
     write(W,N);
  end;
close(W);
end.


Варианты ответа

3,8,6,3,1
3,7,5,3,1
4,7,5,4,2
1,3,6,8,3
4,8,6,4,1
4,8,6,4,2++

Задача 5. Условия:

Исходный список: 3,7,5,3,1 (создан и заполнен. head^.inf = 3).
Запишите список с указанием информационных
полей ) после выполнения операторов:
type ref = ^el;
el = record
  inf: integer;
  next: ref;
end;
var head, p: ref;
d, k, i: integer;
begin
{ создание и заполнение списка }
. . .
d:=2; k:=0; p:=head;
while head<>nil do
   begin d:=d+head^.inf;
     k:=k+2; head:= head^.next;
   end;

i:=round(d/k);
while p<>nil do
  begin
    if p^.inf>0.2*i then
      p^.inf:=p^.inf+1;
      p:=p^.next;
  end;
. . .
end.

Если оценка не вычисляется, вероятно в Вашем браузере отключён JavaScript
Rambler's Top100
Hosted by uCoz