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

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

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

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

Помогите сделать блок-схему

  • Автор темы Автор темы igor133
  • Дата начала Дата начала
Статус
В этой теме нельзя размещать новые ответы.

igor133

Ученик
Регистрация
12 Май 2012
Сообщения
10
Реакции
0
Баллы
0
Помогите сделать блок-схему

Умова:

ПЛАВАЮЩИЭ ЧИСЛА
Дано N (<= N <= 1000) целых чисел. Каждое из них можно один раз изменить не более чем на целую величину L (1 <= L <= 3200) как в сторону увеличения, так и в сторону уменьшения или оставить без изменений. Если после такой операции некоторые из чисел окажутся равными, они зачисляются за одно. С данными числами провели указанную операцию таким образом, что осталась минимально возможное количество чисел.
Нужно написать программу для определения этого количества.

Код:

program swimming_numbers;
{$mode objfpc}{$H+}
uses classes, sysutils;
var f :file of integer;
k:file of integer;
const size=1000;
type mas=array[1..size] of longint;
var a:mas;
n,l,count:integer;
procedure made_file;
begin
assign(f,'input.txt');
rewrite(f);
write('введите количество елиментив: ');
read(n); write(f,n);
write(' величину не большую которой можно будет изменить элемент: ');
read(l); write(f,l);
close (f);
end;
procedure Read_Data;
var i,l,n,k:integer;
begin
assign(f,'input.txt');
reset(f);
k:=filesize(f);
for i:=1 to k do
begin
read(f,a);
if i=1 then n:=a;
if i=2 then l:=a;
end;
writeln('Введите простое число*');
for i:=1 to n do begin
read(a);
write(f,a);
end; end;
procedure quicksort(var a:mas; lo,hi:longint);
procedure sort(l,r:longint);
var i,j,x,y:longint;
begin
i:=l;
j:=r;
x:=a[(l+r)div 2];
repeat
while a<x do inc(i);
while x<a[j] do dec(j);
if i<=j then begin
y:=a;
a:=a[j];
a[j]:=y;
inc(i);
dec(j);
end;
until i>j;
if l<j then sort(l,j);
if i<r then sort(i,r);
end;
begin {quicksort};
sort(lo,hi);
end;
procedure solve;
var i:integer; j:longint;
begin
count:=0;
i:=1;
while i<=n do
begin
j:=i+1;
while j<=n and (a+2*l) do inc(j);
inc(count);
i:=j;
end;
end;
procedure write_data;
begin
assign(k,'output.txt');
rewrite(k);
write(k,count);
close(k);
end;
begin
made_file;
read_data;
quicksort(a,1,n);
solve;
write_data;
end.
 
igor133, Вы что издеваетесь??? Вот точно такая же программа и сделанная блок-схема, возьмите от туда. http://www.tehnari.ru/f41/t72797/
 
ето моя програ, то мой друг он помогаэт мне. но я решыл сам всьо зделать
 
Тема закрыта по причине дублирования.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху