Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.05.2008, 11:14   #1
ShnapS
Пользователь
 
Регистрация: 15.05.2008
Сообщений: 44
По умолчанию Помогите дописать программу.

Записать в текстовый файл 1000 случайных чисел в диапазоне [1..100]. Прочитать каждое пятое и найти их среднюю величину М и среднее квадратическое отклонение от нее D. Составить множество из чисел, лежащих в интервале [M-3D,M+3D], используя только прочитанные числа. Вывести полученное множество в текстовый файл.


program zad7;
uses crt;
var
fail:text;
i,k:integer;
D,M:real;
a:array [1..1000]of integer;
begin
clrscr;
assign(fail,'C:\zad7.txt');
rewrite(fail);

for i:=1 to 1000 do begin A[i]:=random(100);
writeln(fail,a[i]);
end;

Здесь нужно составить цыкл который будет читать только каждый 5-тый элемент массива.

close(fail);
end.

Помогите пока хоть с этим дальше я думаю сам смогу.
ShnapS вне форума Ответить с цитированием
Старый 17.05.2008, 11:18   #2
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,689
По умолчанию

Код:
Sum := 0;
for i := 1 to 1000 do
if i mod 5 = 0 then Sum := Sun+A[i];//Каждое пятое
Код:
i := 0;
repeat
 inc(i, 5);
 if i mod 5 = 0 then inc(Sum, A[i})
until i>=1000

Последний раз редактировалось eoln; 17.05.2008 в 11:21.
eoln вне форума Ответить с цитированием
Старый 17.05.2008, 14:04   #3
ShnapS
Пользователь
 
Регистрация: 15.05.2008
Сообщений: 44
По умолчанию

А можна ли с этим кодом(первым к примеру) что б к примеру выводило так:
A[5]=34
A[10]=75
...
A[1000]=43

А потом присвоить к примеру А-тый массив Б-тому и элементы уже бетого начинались с B[1] до B[200], а дальше уже найти среднею величи и квадратическое отклонение.
ShnapS вне форума Ответить с цитированием
Старый 17.05.2008, 14:27   #4
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,689
По умолчанию

Код:
var B: array[1..200] of byte;
...
Sum := 0;
n := 1;   
for i := 1 to 1000 do   
if i mod 5 = 0 then 
begin
  B [n] := A[i];
  inc(n);
  writeln('A[',i,'] = ', A[i]);
end;
//Массив B содержит каждое пятое из A
for i := 1 to 200 do Sred := Sred + B[i];
Sred := Sred / 200;
//Далее по теории вероятности так
for i := 1 to 200 do Chisl := Chisl + sqr(B[i] - Sred);
SredOtkl := sqrt(Chisl / 200);
eoln вне форума Ответить с цитированием
Старый 17.05.2008, 17:49   #5
ShnapS
Пользователь
 
Регистрация: 15.05.2008
Сообщений: 44
По умолчанию

program zad7;
uses crt;
var
fail:text;
i,k:integer;
D,M,Chislo:real;
a:array [1..1000]of integer;
b:array [1..200]of integer;

begin
clrscr;
assign(fail,'C:\zad7.txt');
rewrite(fail);

for i:=1 to 1000 do begin A[i]:=random(100);
writeln(fail,a[i]);
end;
k:=1;
for i:=1 to 1000 do
if i mod 5 = 0 then
begin
B[k]:=A[i];
inc(k);
writeln('A[',i,']= ',A[i]);
end;

for i:=1 to 200 do
M:=M+B[i];
M:=M/200;

Writeln('Среднее арефметическое M= ',M:2:2);
for i:=1 to 200 do
Chislo:=Chislo+sqr(B[i]-M);
D:=sqrt(Chislo/200);
writeln('Среднее квадратическое отклонение D= ',D:2:2);



close(fail);
end.

М=45,78
D=29,48
M-3D=-42,66
M+3D=134,22


А как же теперь составить множество с прочитаных нами чисел и лежащих в интервале [M-3D,M+3D]?
ShnapS вне форума Ответить с цитированием
Старый 17.05.2008, 19:50   #6
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,689
По умолчанию

Код:
var XXX: set of real;
...
for i := 1 to 200 do
if (B[i]>M-3*D) and (B[i]<M+3*D) then ...
А вот дальше можно либо действительно добавить в множество процедурой Include(XXX, B[i]) либо просто создать новый массив, скажем так
Код:
... then begin
 C[z] := B[i];
 inc(z);
end;
eoln вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите дописать программу cL1zMa Паскаль, Turbo Pascal, PascalABC.NET 2 06.06.2008 14:40
помогите дописать программу starry_night Помощь студентам 0 04.06.2008 19:24
помогите дописать программу slm Работа с сетью в Delphi 3 09.05.2008 18:39
Помогите дописать программу ALIZE Помощь студентам 2 09.12.2007 18:45
Помогите дописать программу клиент-сервер!!! Oksana1988 Помощь студентам 2 31.03.2007 09:45