ответ:
. в нужно вывести все составные числа из промежутка [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;
1) int K(123), N(456);
for(int i = 0; i<N; ++i) {
cout << K << " ";
}
2) vector<int> numbers(1,22,33,45,75,869,7,38,9,25);
for(int i = 0; i<numbers.size(); ++i) {
cout << numbers[i] << " ";
}
cout << endl << "Reverse: ";
for(int i = numbers.size()-1; i!=-1; i--) {
cout << numbers[i] << " ";
}
3) setlocale(LC_ALL, "Russian");
cout << "Введите N: ";
int N;
cin >> N;
for(int i = 1; i<=N; ++i) {
cout << endl << i*i;
}
4) cout << "N: ";
int N = 0;
cin >> N;
int sum = 0;
for(int i = 0; i<N; ++i) {
sum += i;
}
cout << "Sum: " << sum;
5) int N;
int sum = 0;
cout << "N: ";
cin >> N;
vector<int> arr;
for(int i = 0; i<N; ++i) {
int temp;
cout << "Number " << i+1 << ": ";
cin >> temp;
arr.push_back(temp);
sum += temp;
}
cout << endl << "Average: " << sum / arr.size();
6) int N;
cout << "N: ";
cin >> N;
long double a = 0;
for(int i = 0; i<N; ++i) {
a+=1/N;
}
cout << endl << "Sum: " << a;