составить программу по информатике!
Задание: Набрать приведенную ниже программу в среде pascalABC.NET.
В прилагается схема.
Программа на языке Pascal:
//Вывести числа от 1 до 10 через пробел
program while1;
var i:integer //целое число
begin
writeln('Вас приветствует программа Петрова П')
i := 1; //задать начальное значение переменной i
while (i <= 10) do
begin
write (i, ' '); //Вывод значений переменной i через пробелы
i := i + 1; //Увеличение значения переменой i на 1
end;
end.
Цифровой гироскопический датчик предназначен для измерения угла и
направления вращения робота, а также скорости его вращения. Точность
измерения составляет +/-30 , максимальная скорость проведения измерений
4400/сек., частота опроса датчика 1кГц.
Будучи включенным, при длительном нахождении робота в неподвижном
состоянии, определяемое значение угла не остаётся постоянным, а ошибочно
меняется или дрейфует. Поэтому, чем больше времени проходит от начала
первого обращения к гироскопическому датчику до чтения показаний, тем
менее точным становятся результаты за счёт систематического накопления
ошибки. Поэтому перед началом каждого измерения всегда необходимо
производить обнуление угла при режима Сброс.
Сорян, это всё что я знаю о лего
ответ:
. в нужно вывести все составные числа из промежутка [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;