Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 28.10.2008
Сообщений: 7
1

Найти максимальную толщину краски на трубе

28.10.2008, 20:17. Показов 1423. Ответов 7
Метки нет (Все метки)

отряд пионеров красил трубу 30 км.Каждому пионеру было поручено красить свой участок.однако их вожатый что-то напутал и не которые участки были покрашены не сколько раз.Каждый пионер красил трубу слоем 1 мм .найти максимальную толщину краски на трубе.
ввод данных: целое число N пионеров в отряде,не более 5000,далее на 2 N строках целые числа координаты в метрах начала и конца участков,отведенных каждому из пионеров.
выходные данные: 1 строка целое число максимальную толщину слоя в мм
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.10.2008, 20:17
Ответы с готовыми решениями:

Рассчитайте максимальную толщину проволоки, которая может удержаться на поверхности керосина
Будьте добры, помогите, пожалуйста. Рассчитайте максимальную толщину проволоки, которая может...

Найти количество красной краски, затем количество масленой краски
2)Создать список имеющейся краски. Описать и ввести массив, содержащий 10 записей следующей...

Найти количество красной краски, затем количество масленой краски
4)Создать список имеющейся краски. Описать и ввести массив, содержащий 10 записей следующей...

Сколько граммов краски потребуется для покраски стола, если на покраску 1кв.метра требуется x граммов краски?
Помогите пожалуйста задача вроде простая, а сообразить не могу. Сколько граммов краски...

7
(Yellow_Duck)
1261 / 130 / 15
Регистрация: 16.10.2008
Сообщений: 733
28.10.2008, 20:50 2
Это где тебе такое задали?
1
0 / 0 / 0
Регистрация: 28.10.2008
Сообщений: 7
28.10.2008, 21:06  [ТС] 3
В колледже я просто не знаю как записать условие задачи
0
(Yellow_Duck)
1261 / 130 / 15
Регистрация: 16.10.2008
Сообщений: 733
29.10.2008, 02:04 4
а....похоже очень на олимпиадную задачу просто.....ладно, давай к утру, сделаю.

Добавлено через 2 часа 23 минуты 38 секунд
Все, придумал

Добавлено через 1 час 53 минуты 42 секунды
Во кстати ниче такая задачка, вроде простая, но я немного задумался.
сразу видно, колледж))))
лови короче
Не забуть нажать на кнпку спасибо

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
program IdiotPioners;
 
{$APPTYPE CONSOLE}     //Если ты программируешь в паскале, а не в делфи console application, то убери эту строку, и слежущую
 
uses
  SysUtils;
 
type
   meters = 0 .. 30002;      {Cоздаем два типа, чтоб меньше памяти занимало}
   koli4estvo = 0 .. 5001;
 
 
var
  x1:array[1..5000] of meters;        {в первом массиве - начальные координаты}
  x2:array[1..5000] of meters;      {во втором - конечные}
  x3:array[1..5000] of meters;      {в третьем-количество перекрытий на этом слое с другими}
  kol:koli4estvo;       {количество пионеров}
  k,i,c:meters;        {всякие левые переменные, типа для создания циклов}      
 
procedure findmax(a:array of meters; b:koli4estvo; var c:meters);      {процедура, которая приминяется к массиву,с использованием числа какого то и изменяется в процедуре переменная с} 
    var      {процедура ищет максимальное число перекрытий}
       max:koli4estvo;
    begin
       max:=a[1];        {до болли понятный алгоритм поиска максимального числа в массиве}
       for i:=2 to b do begin
       if a[i]>max then max:=a[i];
       c:=max;       {присвоение переменной с значения максимального числа} 
    end;
   end;
 
 
begin
writeln('Enter number of pioners:  '); readln(kol);       {считываем количество пенсионеров}
writeln('Vvodite koordinati (x1) i (x2) dlya ', kol, ' pionerov');
writeln('-----------------------------------------------------');
 
i:=1;
 
while i<>kol+1 do begin        {пока мы не заполним всех}
write(i,' : ','x1 =  ');readln(x1[i]);      {записываем координаты}
write(i,' : ','x2 =  ');readln(x2[i]);inc(i);      {в соответствующие массивы}
writeln('---------------------');
end;
 
for k:=1 to kol do begin      {цикл для поиска перекрытий участка k}
 For i:=1 to kol do begin            {элементами i}
     if (x1[k]<=x2[i]) and (x2[k]>=x1[i]) then x3[k]:=x3[k]+1;      {как раз и есть условие, когда они перекрываются тогда}
   end;       {записываем в kый элемент третьего массива +1}
end;
 
for k:=1 to kol do dec(x3[k]);       {вычитаем по единице из каждого элемента массива перекрытий}
      {т.к. там еще считается случай, перекрытия элементом самого себя}
 
findmax(x3,kol,c);        {выполняем функцию вверху}
 
writeln('---------------------');
write('Max number of layers:  ');
writeln(c,' mm');       {пишем полученное с}
writeln('Press Enter For Exit');
readln;
end.
1
3066 / 726 / 69
Регистрация: 24.09.2008
Сообщений: 1,531
29.10.2008, 05:11 5
Всё вроде как норм (З.Ы. прогу не тестил), тока немного не согласен вот с этим:
Код
if (x1[k]<=x2[i]) and (x2[k]>=x1[i]) then
Ведь если x1[k]=x2[i] и x2[k]=x1[i] это означает что перекрытий нету, ну это можно представить типа того что покравили до 10-го метра, а потом с 10-го начали дальше, т.е. всё внорме, я бы написал вот так:
Код
if (x1[k]<x2[i]) and (x2[k]>x1[i]) then
1
0 / 0 / 0
Регистрация: 28.10.2008
Сообщений: 7
29.10.2008, 08:22  [ТС] 6
Спасибо огромное
0
(Yellow_Duck)
1261 / 130 / 15
Регистрация: 16.10.2008
Сообщений: 733
29.10.2008, 09:57 7
Не не не стоп, тогда вообще белиберда получается, илья, да я нашел ошибку, но твоя отсеивает случай, когда одно перекрытие является подмножеством друго, ща, я придумал, реализую и напишу

Добавлено через 2 минуты 44 секунды
Хотя, да, я просто немного запутался....угумс.....
у ильи правильно
1
2856 / 1985 / 788
Регистрация: 23.09.2010
Сообщений: 4,877
06.01.2011, 21:29 8
pioneerwow

Не по теме:

В чужую тему не лезьте.

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.01.2011, 21:29

Найти давление p воздуха в трубе вблизи закрытого конца трубы
Закрытая с одного конца труба длины l=1,00 м вращается вокруг перпендикулярной к ней вертикальной...

Найти толщину пластинки
Луч света падает на плоскопараллельную пластинку под углом 60^{\circ}. Угол преломления 30^{\circ}....

Найти толщину защитного слоя
Добрый день,знатоки!!! Помогите решить! Дано следующее: X=\frac{G\times {\exp }^{-d\times...

Найти максимальную оценку студента и вывести его ID потом фамилию и максимальную оценку
Здравствуйте! Мне нужно найти максимальную оценку студента и вывести его ID потом фамилию и макс...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru