Тест по теме «Программное управление работой компьютера»
1.Что понимаеться под уровнем языка программирования?
Уровень языка программирования
2.Какое выражение получиться при вычислении следующего выражения, записанного на Паскале?
6 div 5 * 3 – 2 mod 5 +17 div 3 mod 3
3.Напишите на Паскале выражение для определения третьей цифры справа в записи целого числа N (100≤N≤999). Например: для числа N=5643результатом будет цифра 6.
4.Дано натуральное число N. Составьте на Паскале программу для нахождения суммы первой и последней цифр этого числа.
5.Сформулируйте основную проблему, которую необходимо решить при реализации алгоритмов перебора.
Основная проблема алгоритмов перебора
Вот пример программы на паскале ABC:
var a:array [1..1000000] of integer;
b:array [1..10] of longint;
c:integer;
i,max,n:longint;
begin
write('Введите число элементов массива: ');
readln(n);
max:=0;
for i:=1 to 10 do
b[i]:=0;
for i:=1 to n do begin
a[i]:=random(10)+1;
write(a[i],' ');
b[a[i]]:=b[a[i]]+1
end;
for i:=1 to 10 do if b[i]>max then
begin
c:=i;
max:=b[i]
end;
writeln;
writeln('Чаще всего в массиве встречается число ',c)
end.
"...напечатает сначала 2, потом - 6" -- это значит a=2 и b=6?
про пятеричные записи ничего не понял... :) И ИМХО к чему такие сложности? И для чего нам комп и программа? Я подправил исходную прогу чтобы она выдавала все числа подходящие по условию
var x,a,b: longint;
begin
for var i := 999 DownTo 100 do begin
a := 0;
b := 1;
x := i;
while x>0 do begin
if x mod 2 > 0 then a := a+1 else b := b+(x mod 5);
x := x div 5;
end;
if (a = 2) and (b = 6) then writeln('x = ', i, ' a = ', a, ' b = ',b);
end;
end.
прога проводит расчет для всх трехзначных чисел от 999 до 100
итого мы видим что максимальное подходящее число это 960
при необходимости прогу можно переделать чтобы она находила только максимальное число.