ответ:
. в нужно вывести все составные числа из промежутка [2; n]. код программы:
program lab3;
var i,n,j,s,l: integer;
m: real;
begin
readln (n);
for i: =2 to n do
begin
s: =trunc (sqrt (i));
for l: =2 to s do
begin
m: = i mod l;
if m=0 then
write (' ',i);
end;
end;
end.
но проблема - как только s становится больше 2, составные числа начинают несколько раз повторятся, т.к., например 12 делится и на 2 и на 3. вопрос: как мне сделать выход из цикла после первого успешного деления?
var
i, n, j, s, l: integer;
m: real;
begin
readln(n);
for i : = 2 to n do
begin
s : = trunc(sqrt(i));
for l : = 2 to s do
begin
m : = i mod l;
if m = 0 then
begin
write(' ', i);
break;
Поделитесь своими знаниями, ответьте на вопрос:
Решить на pascal один из самых маленьких фруктов, не совсем привычный для нас и далеко не всем известный – рамбутан. на дереве плоды рамбутана растут небольшими гроздьями. посчитайте количество плодов на дереве, если известно, что там растет m гроздьев с разным количеством плодов. формат ввода: m – количество гроздьев (m< =12) a[1] – количество плодов, первая гроздь а[2] – количество плодов, вторая гроздь … а[m] – количество плодов, m-ая гроздь пример ввода: 7 17 15 20 22 14 15 16 формат вывода: s – количество плодов на всем дереве пример вывода: 119
var
M,s,i,a:integer;
begin
s := 0;
read(M);
for i := 1 to M do
begin
read(a);
s := s + a;
end;
writeln(s);
end.