На третьей строчке, видимо, ошибка, и вместо Вывод(x) на самом деле Ввод(x).
var x: integer; y: real; begin Readln(x); y := (10 + 2 * x) / (11 - x); Writeln(y); end.При x = 3 переменная y = 2Задание 3var number, resultNumber, i: integer; begin resultNumber := 1; for i := 1 to 3 do begin Readln(number); resultNumber := resultNumber * number; end; Writeln(resultNumber); end.Задание 4var a: integer; b, c: real; begin a := 3; b := -1.5; c := 6 - 2 * b; c := c - a; Writeln(c); end.Результатом вывода будет число 6Задание 5var x, y, z: integer; begin x := 8; y := 2; if (x > y) then z := x - y else z := y + x; Writeln(z); end.а) Если адрессация 32-х разрядная, то число ячеек - .
б) Максимальный объмем адрессуемой памяти - = 4гб. Вспомните траблу с тем, что на 32-х разрядных ОС (которые задействуют проц в виртуальном режиме - могут использовать его как 32-х разрядный, если он даже 64-х) видимый максимальный объмем ОЗУ не больше этого предела, хоть пусть стоят плашки по 32гб.
в) Ну, если считать, что первый адрес - 0, то последний - 1
П.С. Число ячеек = объему памяти в байтах, так как можно адрессовать каждый байт - было сказано, что "при каждой операции... 32 бита данных", это говорит, что регистры тоже 32-х разрядные, но если вы видели какой-нибудь из языков ассемблера, то там можно обращаться к частям регистров, вплоть до размера части в 8 бит. Это на практике.
П.С.С. Сказано что проц теоретический, возможно, подразумевается, что ячейки не 1 байт, а 4 байта, т.е число ячеек в 4 раза меньше - . Выбирайте, что вам кажется более подходящим, препод вам известнее :)
Поделитесь своими знаниями, ответьте на вопрос:
Напишите программу, которая в последовательности натуральных чисел находит среднее арифметическое чисел, кратных 4, или сообщает, что таких чисел нет (выводит NO Программа получает на вход натуральные числа, количество введѐнных чисел неизвестно, последовательность чисел заканчивается числом 0 (0 признак окончания ввода, не входит в последовательность). Количество чисел не превышает 100. Введѐнные числа не превышают 300. Программа должна вывести среднее арифметическое чисел, кратных 4 или вывести «NO», если таких чисел нет. Пример работы программы: Входные данные Выходные данные 8 120 64 16 0 52.0 111 1 0 NO Б. Число кратное n и дополнительное условие 1) Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, кратное 5. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 5. Количество чисел не превышает 1000. Введѐнные числа не превышают 30 000. Программа должна вывести одно число – максимальное число, кратное 5. Пример работы программы: Входные данные Выходные данные 3 10 25 12 25
1)
program arithmeticmean;
var
i, quantity: integer;
amount: longint;
arithmetic_mean: real;
begin
quantity := 0;
amount := 0;
i := 1;
while i <> 0 do
begin
read(i);
if (i mod 4 = 0) and (i <> 0) then
begin
amount := amount + i;
quantity := quantity + 1;
end
end;
arithmetic_mean := amount / quantity;
if (quantity <> 0) then
write(arithmetic_mean)
else
write('NO');
end.
2)
program max5;
var
size, max, counter, i: integer;
begin
counter := 0;
max := 0;
readln(size);
while counter < size do
begin
readln(i);
if (max < i) and (i mod 5 = 0) then
max := i;
counter := counter + 1;
end;
write(max);
end.
Объяснение:
1)
program arithmeticmean; // Название программы
var
i, quantity: integer; // Создание целочисленных переменных
i - вводимые с клавиатуры числа; quantity - количество трехзначных чисел.amount: longint; // Создание целочисленной переменной
amount - сумма трехзначных чиселarithmetic_mean: real; // Создание вещественной переменной
arithmetic_mean - среднее арифметическоеbegin // Начало программы
quantity := 0; // Количество трехзначных чисел = 0
amount := 0; // Сумма трехзначных чисел = 0
i := 1; // Переменная i = 1 (делается это для того, чтобы зайти в цикл (выходит какого-то рода обман))
while i <> 0 do // Пока переменная i ≠ 0
begin // Начало цикла
read(i); // Считываем с клавиатуры значение переменной i
if (i mod 4 = 0) and (i <> 0) then // Если остаток от деления = 4 И значение переменной i ≠ 0, тогда
begin // Начало блока
amount := amount + i; // К переменной, хранящей сумму, прибавляется значение переменной i
quantity := quantity + 1; // К переменной, хранящей количество, прибавляется значение 1
end // Конец блока
end; // Конец цикла
arithmetic_mean := amount / quantity; // Вычисление среднего арифметического (Сумма ÷ количество)
if (quantity <> 0) then // Если количество ≠ 0, тогда - проверка, есть ли
числа, подходящие под условие, в последовательности
write(arithmetic_mean) // Выводим среднее арифметическое
else // Иначе
write('NO'); // Выводим NO
end. // Конец программы
2)
program max5; // Название программы
var
size, max, counter, i: integer; // Создание целочисленных переменных
i - вводимые числа с клавиатуры; size - количество чисел в последовательности; max - максимальное число;counter - переменная счетчик.begin // Начало программы
counter := 0; // Переменная счетчик = 0
max := 0; // Максимум = 0
readln(size); // Считываем количество чисел в последовательности с клавиатуры
while counter < size do // Пока значение переменной counter < значения переменной size
begin // Начало цикла
readln(i); // Считываем число с клавиатуры
if (max < i) and (i mod 5 = 0) then // Если значение переменной max < значения переменной i И остаток от деления на 5 = 0, тогда
max := i; // Значение переменной max = значению переменной i
counter := counter + 1; // Переменная счетчик + 1
end; // Конец цикла
write(max); // Вывод значения переменной max
end. // Конец программы