ответ:
. в нужно вывести все составные числа из промежутка [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;
Поделитесь своими знаниями, ответьте на вопрос:
Файл размером 256 Кбайт передаётся через некоторое соединение со скоростью 1024 бит в секунду. Определите размер файла (в Кбайт), который можно передать за то же время через другое соединение со скоростью 256 бит в секунду. В ответе укажите одно число - размер файла в Кбайт. Единицы измерения писать не нужно. ответ:
Так как скорость одинаковая, можно решить через пропорции:
Файл 256 Кбайт передаётся со скоростью 1024 бит/с.
Другой файл передаётся со скоростью 256 бит/с, то есть в 4 раза медленнее. Значит и передаваемый файл получится в 4 раза меньше. 256/4 = 64.
Или же можно решить так, пошагово вычисляя:
Файл1 = 256 Кбайт = 256*1024 байт.
Скорость1 = 1024 бит/с = 1024/8 байт/с.
Время1 = ? = Файл1/Скорость1 = = 2048 с.
Время2 = Время 1 = 2048 с.
Скорость2 = 256 бит/с.
Файл2 = ? = Скорость2*Время2 = 256*2048 бит = байт = 32*2048 байт = Кбайт = 64 Кбайт.