• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о проекте, чтобы узнать больше. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Нужен листинг программы и блок-схема

prostogrey

Ученик
Регистрация
21 Май 2012
Сообщения
7
Реакции
0
Баллы
0
Нужен листинг программы и блок-схема

Помогите решить, очень нужно.
Смотрите тут :Prosto Grey
 
О, святая простота! Прям умиляет убежденность некоторых, что все поголовно имеют аккаунты у Паши Дурня. Я вот, например, не имею. И вообще Вам сюда: http://www.tehnari.ru/f8/t32642/.
 
1.webp

2.webp
 
Касательно первой задачи. Шаг разбиения я, уж извините, но сделал вдвое меньшим - 0.1 это слишком грубо. Кроме того, в методе Симпсона есть одна тонкость: чтобы он успешно работал, нужно, чтобы число промежутков, т.е. величина (b-a)/h, была ЧЕТНОЙ (здесь a и b - пределы интегрирования, h - шаг). А по условию выходит (1.5-1.0)/0.1=5. Поэтому шаг взят 0.05. Метод трапеций - в качестве бонуса.
Код:
Const
 a=1.0;
 b=1.5;
 h=0.05;

Function F(x:Real):Real;
begin
 F:=Sin(x)*Ln(Sin(x)/Cos(x));
end;

Function Antiderivative(x:Real):Real;
begin
 Antiderivative:=Ln(Sin(x/2)/Cos(x/2))-Cos(x)*Ln(Sin(x)/Cos(x));
end;

Procedure Rectangle;
var
 i,N:Integer;
 Sum:Real;
begin
 N:=Round((b-a)/h);
 Sum:=0;
 for i:=0 to N-1 do
  Sum:=Sum+h*F(a+h*i);
 WriteLn('Rectangle:     ', Sum:10:5);
end;

Procedure Trapezium;
var
 i,N:Integer;
 Sum:Real;
begin
 N:=Round((b-a)/h);
 Sum:=(F(a)+F(b))/2*h;
 for i:=1 to N-1 do
  Sum:=Sum+h*F(a+h*i);
 WriteLn('Trapezium:     ', Sum:10:5);
end;

Procedure Simpson;
var
 i,N:Integer;
 Sum:Real;
begin
 N:=Round((b-a)/(2*h));
 Sum:=(F(a)+F(b))/3*h;
 for i:=1 to N do
  Sum:=Sum+4.0*h/3.0*F(a+h*(2*i-1));
 for i:=2 to N do
  Sum:=Sum+2.0*h/3.0*F(a+h*(2*i-2));
 WriteLn('Simpson:       ', Sum:10:5);
end;

BEGIN
 Rectangle;
 Trapezium;
 Simpson;
 WriteLn('Accurate value:', (Antiderivative(b)-Antiderivative(a)):10:5);
 ReadLn;
END.
 
Из отсортированного файла сформировать файл записей выходного документа

Из отсортированного файла сформировать файл записей выходного документа, содержащий список женщин до 50 лет, имеющих детей. Распечатать данные из файла в виде таблицы:
Фио-------дата рождения----------количество детей
 
Последнее редактирование:
Нужно сделать три задания

нужно сделать 3 задание
 

Вложения

  • 2012-05-21-515_1.webp
    2012-05-21-515_1.webp
    59.1 KB · Просмотры: 173
а первые два, значит, делать не надо? :))

ЯП, насколько понимаю, у вас объектный Pascal, в просторечии именуемый Delphi?
 
Два задания вроде как есть, нужно три, помогите

program lb3;
uses crt;
type
zap1=record
f:string;
p:char;
kd: byte;

day,month,god:byte;
dr:string;

end;
zap = file of zap1;
var
f,x,d,y :zap;
z, kd1,n1:byte;
n:integer;
k :integer;


procedure sozd (var x:zap;k:integer);
var
i:byte;
z:zap1;
begin

rewrite(x);
for i:=1 to k do
begin
close (input);
reset (input);
writeln ('nomer ', i);
writeln ('vvedite Fio');
readln (z.f);
writeln ('vvedite data rozden');
readln(z.dr);
writeln ('vvedite pol (w/m) ');
repeat
readln (z.p);
until ((z.p='w') or (z.p='m'));
writeln( 'vvedite kolichestvo detei');
readln (z.kd);
write (x,z);
end;
close (x);
end;

procedure pro (var x:zap; n:integer);
var
i:byte;
z:zap1;
begin
reset(x);
i:=1;
writeln ('┌─────────────────┬──────────────┬─────────┬─────────────┐');
writeln ('│ FIO │Data │POl │Kolichestvo │');
writeln ('│ │rozdenia │ │Detei │');
writeln ('├─────────────────┼──────────────┼─────────┼─────────────┤');
repeat
read (x,z);
writeln ('│',z.f:17, '│ ', z.dr:12,' │', z.p:9 ,'│', z.kd:13,'│');
i:=i+1;
until eof(x);
writeln ('└─────────────────┴──────────────┴─────────┴─────────────┘');
close (x);
end;

procedure Sort (var x,d:zap; n1:byte);
var
i:byte;
m:zap1;
z:zap1;
flag:boolean;
begin
rewrite(d);
reset(x);

while not eof(x) do
begin
read(x,z);
write(d,z);
end;

repeat
flag:=true;
for i:=0 to filesize(x)-2 do
begin
seek(d,i);
read(d,z);
read(d,m);

if z.f>m.f then
begin
flag:=false;
seek(d,i);
write(d,m);
write(d,z);
end;
end;
until flag=true;
end;
{
rewrite(d);
reset (x);
while not eof(x) do
begin
read (x,z);
write (d,z);
end;
repeat
flag:=true;
i:=0;
while not eof(d) do
begin
seek(d,i);
read(d,z);
read(d,m);
if z.f<m.f then
begin
flag:=false;
seek(d,i);
write(d,m);
write(d,z);
end;
end;
until flag=true;
close(x);
close(d);

i:=i+1;
end; }


{ procedure sort2 (var d,y:zap);
var
mmm:zap1;
begin
reset(d);
rewrite(y);
read(d,mmm);




}
begin
clrscr;
checkeof:=true;
write('kol-vo strok: ');
readln(k);
clrscr;
assign(f,'f.dat');
assign(x,'x.dat');
assign(d,'d.dat');
assign(y,'y.dat');
sozd (x,k);
clrscr;
pro (x,n);
writeln('Press any key to sort table...');
readkey;
clrscr;
sort (x, d, n1);
pro(d,n);
readkey;
end.


В очередной раз объединяю созданные вами темы, касающиеся одного вопроса. Если не прекратите плодить одинаковые темы, буду вынужден применить к вам непопулярные меры. Ждите советов в этой теме. Модератор.
 

Вложения

  • 2012-05-21-515_1.webp
    2012-05-21-515_1.webp
    71.9 KB · Просмотры: 71
Назад
Сверху