На паскале напишите Начав тренировки, спортсмен в первый день пробежал 10 км. В каждый
последующий день он увеличивал норму пробега на 10%.
а) Через сколько дней с начала тренировок спортсмен будет пробегать в
день более 20 км?
б) На какой день с начала тренировок суммарный пробег составит не
менее 100 км?
#include <iostream>
#include <cstdlib>
#include <ctime>
int main()
{
using namespace std;
const int N = 10;
int A[N];
srand(time(0));
for (int i = 0; i < N; ++i)
A[i] = rand() % 201 - 100;
//Вывод исходного массива на экран
for (int i = 0; i < N; ++i)
cout << A[i] << " ";
cout << endl;
//Подсчитаем количества положительных и отрицательных
int kpos = 0, kneg = 0;
for (int i = 0; i < N; i++)
if (A[i] > 0)
++kpos;
else
++kneg;
int * Apos = new int[kpos];
int * Aneg = new int[kneg];
int pos = 0, neg = 0;
for (int i = 0; i < N; ++i)
if (A[i] > 0)
Apos[pos++] = A[i];
else
Aneg[neg++] = A[i];
for (int i = 0; i < N; ++i)
if (i < kpos)
A[i] = Apos[i];
else
A[i] = Aneg[i - kpos];
delete[] Apos;
delete[] Aneg;
//Вывод полученного массива на экран
for (int i = 0; i < N; ++i)
cout << A[i] << " ";
cout << endl;
return 0;
}
Const
n=15;
Var
ar:array[1..n] of integer;
pro,i,k:uint64;
begin
randomize;
pro:=1;
writeln('First array:');
for i:=1 to n do
begin
ar[i]:=random(22,23); //Серьёно?
write(ar[i]:4);
pro:=pro*ar[i];
end;
writeln;
writeln('Pro=',pro);
write('Enter value:');
readln(k);
writeln('Final array:');
for i:=1 to n do
begin
ar[i]:=ar[i]+k;
write(ar[i]:6);
end;
end.
Пример работы программы:
First array:
23 23 22 22 22 22 23 23 23 22 23 22 22 23 23
Pro=10868183115618730368
Enter value:3
Final array:
26 26 25 25 25 25 26 26 26 25 26 25 25 26 26