PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018 Внимание! Если программа не работает, обновите версию!
begin var (a,b,h):=(0.0,3*Pi,0.6); var x:=a; var (k,s):=(0,0.0); while x<=b do begin var y:=x*Sin(x); Writeln(x:5:1,y:18:13); if y>0 then k+=1 else s+=y; x+=h end; Writeln('Положительных- ',k,', сумма отрицательных ',s) end.
Вот программа без цикла.
#include "stdafx.h"
#include <iostream>
using namespace std;
int main()
{
int d, m, y, i;
int max[12] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
setlocale(0, "");
cout << "Введите день(число)";
cin >> d;
cout << "Введите месяц(число)";
cin >> m;
cout << "Введите год(число)";
cin >> y;
if ( (y % 4 == 0 && y % 100 != 0) || y % 400 == 0) //Проверка что год високосный
max[1]++;
if( d == max[m-1])
{
d = 1;
m++;
}
else
d++;
if (m == 13)
{
m = 1;
y++;
}
cout << d << " " << m << " " << y;
cin >> d;//Ожидание ввода, чтобы посмотреть результаты пработы программы
return 0;
}
Эта программа определяет следующий день от текущего.
А вот программа, которая определяет предыдущий день.
#include "stdafx.h"
#include <iostream>
using namespace std;
int main()
{
int d, m, y, i;
int max[12] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
setlocale(0, "");
cout << "Введите день(число)";
cin >> d;
cout << "Введите месяц(число)";
cin >> m;
cout << "Введите год(число)";
cin >> y;
if ( (y % 4 == 0 && y % 100 != 0) || y % 400 == 0) //Проверка что год високосный
max[1]++;
if( d == 1)
{
if (m == 1)
{
m = 12;
y--;
}
else
m--;
d = max[m - 1];
}
else
d--;
cout << d << " " << m << " " << y;
cin >> d;//Ожидание ввода, чтобы посмотреть результаты пработы программы
return 0;
}
Внимание! Если программа не работает, обновите версию!
begin
var (a,b,h):=(0.0,3*Pi,0.6);
var x:=a;
var (k,s):=(0,0.0);
while x<=b do begin
var y:=x*Sin(x);
Writeln(x:5:1,y:18:13);
if y>0 then k+=1 else s+=y;
x+=h
end;
Writeln('Положительных- ',k,', сумма отрицательных ',s)
end.
Пример
0.0 0.0000000000000
0.6 0.3387854840370
1.2 1.1184469031607
1.8 1.7529257355808
2.4 1.6211116333228
3.0 0.4233600241796
3.6 -1.5930735958615
4.2 -3.6606182441371
4.8 -4.7815901224120
5.4 -4.1729282328023
6.0 -1.6764929891936
6.6 2.0561729991883
7.2 5.7144086197139
7.8 7.7886380939219
8.4 7.1786308279416
9.0 3.7090663671758
Положительных- 10, сумма отрицательных -15.8847031844065