Технический форум

Технический форум (http://www.tehnari.ru/)
-   Помощь студентам (http://www.tehnari.ru/f41/)
-   -   Помогите пожалуйста составить программу на Паскале с предусловием (http://www.tehnari.ru/f41/t91817/)

Lesca 24.10.2013 18:55

Помогите пожалуйста составить программу на Паскале с предусловием
 
1)Составьте программу для определения N!-M! N! = 1*2*3*4*.........*n
2)Вводятся 14 чисел. Определить, сколько среди них положительных (включая 0) и сколько отрицательных. (Числа вводятся в одну переменную в цикле)
3)1. Концентрация хлорной извести в бассейне V м3 составляет 10 г/л. Через одну трубу в бассейн вливают чистую воду со скоростью Q м3/час, через другую трубу с такой же скоростью вода выливается. При условии идеального перемешивания концентрация хлорной извести изменятся по закону C = C0e-Qt/V , где t – время,*** C0 – начальная концентрация. Напечатать таблицу изменения концентрации хлорной извести для интервала времени от 0 до 5 часов с шагом 0,5 часа.

Vladimir_S 24.10.2013 19:46

Цитата:

Сообщение от Lesca (Сообщение 961686)
1)Составьте программу для определения N!-M! N! = 1*2*3*4*.........*n

Ладно, с этим помогу. Только вот всякие там дебильные указули типа "использовать предусловие" и т.п. это, извините, мимо. Решаю как считаю нужным.
Два варианта.
1. С рекурсивной функцией:
Код:

Var
 N,M:Integer;

Function Fact(p:Integer):Real;
begin
 If p<=1 then Fact:=1 else Fact:=p*Fact(p-1);
end;

Begin
 Write('N= ');
 Readln(N);
 Write('M= ');
 Readln(M);
 Writeln((Fact(N)-Fact(M)):0:0);
 Readln
End.

2. С обычной функцией:
Код:

Var
 N,M:Integer;

Function Fact(p:Integer):Real;
var i:Integer; F:Real;
begin
 F:=1;
 For i:=2 to p do F:=F*i;
 Fact:=F;
end;

Begin
 Write('N= ');
 Readln(N);
 Write('M= ');
 Readln(M);
 Writeln((Fact(N)-Fact(M)):0:0);
 Readln
End.

Что касается остальных двух задач - то это уже полный детский сад. Соблаговолите справиться самостоятельно.


Часовой пояс GMT +4, время: 06:38.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.