Контрольная работа № 5 "Начала программирования"
ВАРИАНТ 1
1. Составьте программу, выводящую значение вещественной a + b переменной х, равное значению выражения , где a и b — целочисленные переменные, их значения вводятся с клавиатуры.
2. Составьте программу, запрашивающую оценки за контрольные работы по информатике и физике. Если их сумма не менее 8, то должен выводиться комментарий «Молодец!», в противном случае — «Подтянись!».
3. Составьте программу нахождения суммы квадратов натуральных чисел от 15 до 25.
uses utils;
var
n,i,sum,time:longint;
flag:boolean;
begin
readln(n);
if n<2 then flag:=false;{Единица - не простое число}
if n=2 then flag:=true;{2 - простое}
if (n>2) and (n mod 2 <> 0) then begin{ после двойки простые числа только нечетные}
for i:=1 to n do begin{проверяем что бы было только 2 делителя}
sum:=sum+1;
end;
if sum=2 then flag:=true;
end
else flag:=false;
if flag then writeln('Число простое') else writeln('Число НЕ простое');
time:=milliseconds;
writeln('Времени затрачено ',time:10,' ms.');
end.
Все проверки сделаны для сокращения времени работы программы.
// Внимание! Если программа не работает, обновите версию!
function IsPrime(n:integer):boolean;
begin
if n<4 then Result:=True
else begin
var found:=(n mod 2=0);
var p:=3;
while (not found) and (sqr(p)<=n) do
begin found:=(n mod p=0); p+=2 end;
Result:=not found
end
end;
begin
var a:=ArrRandom(56,1000,9999); a.Println;
Writeln('Сумма простых равна ',a.Where(t->IsPrime(t)).Sum)
end.
Пример
9439 5453 9513 6006 9543 9665 1503 5172 1466 6841 1537 5088 2768 7795 6462 7780 6567 1956 5669 6214 3307 7069 2462 8404 3407 7707 6307 1121 8854 7039 9663 6162 8362 7376 5578 8784 4688 2745 1361 6457 6234 2320 8270 9441 2244 8934 4081 8649 9684 4137 8865 1179 7488 9410 5828 3369
Сумма простых равна 44132