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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.04.2009, 00:28   #1
Cyanide
 
Аватар для Cyanide
 
Регистрация: 05.04.2009
Сообщений: 6
По умолчанию Требуется написать прогу на Pascal(таблица)

Задание: Имеются сведения об именах больших планет солнечной системы,их диаметры,средние расстояния до солнца и количество спутников.выведите списки планет,орбиты которых лежат внутри орбиты заданной,и планет с диаметрами,большими заданной.
Решите пожалуйста способом с подпрограммой и способом с модулем...
Cyanide вне форума Ответить с цитированием
Старый 18.04.2009, 14:50   #2
VadEr
Форумчанин
 
Аватар для VadEr
 
Регистрация: 24.03.2009
Сообщений: 375
По умолчанию

Решение способом подпрограммы (значения в const не совсем точные):

Код:
Program Planets;
const
  P: array[1..9] of string[8] = ('Меркурий','Венера','Земля','Марс','Юпитер','Сатурн','Уран','Нептун','Плутон'); {Планеты}
  D: array[1..9] of real = (4880, 12104, 12760, 6794, 142984, 60300, 51118, 49528, 2390); {Диаметры, км}
  Ls: array[1..9] of real = (0.387, 0.723, 1, 1.524, 5.2, 9.584, 19.19, 30.02, 39.23); {Среднее расстояние от Солнца, а.е.}
  Ns: array[1..9] of byte = (0, 0, 1, 2, 28, 7, 21, 8, 1); {Кол-во спутников}
var
  Li, Di: real; {Заднные орбита и диаметр}

  procedure ListOfOrbit(Lx :real);
  var i: integer;
  begin
    writeln('Список планет по заданной орбите:');
    For i:=1 to 9 do
        if Lx <= Ls[i] then
           writeln(i,') ',P[i],';');
    writeln;
  end;

  procedure ListOfDiametr(Dx :real);
  var i: integer;
  begin
    writeln('Список планет по заданному диаметру:');
    For i:=1 to 9 do
        if Dx > D[i] then
           writeln(i,') ',P[i],';');
    writeln;
  end;

begin
  Writeln('Задайте орбиту, а через "ПРОБЕЛ", - диаметр и нажмите <ENTER>');
  Readln(Li,Di);
  writeln;
  ListOfOrbit(Li);
  ListOfDiametr(Di);
  Readln;
end.
VadEr вне форума Ответить с цитированием
Старый 19.04.2009, 00:47   #3
Cyanide
 
Аватар для Cyanide
 
Регистрация: 05.04.2009
Сообщений: 6
По умолчанию

Спасибо Вам огромное! Отдельно благодарю за пояснения в скобках))
Кто-нибудь покажите пожалуйста способ решения с модулем...
Cyanide вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Требуется за деньги написать прогу lissvkd Фриланс 1 09.01.2009 12:53
Помогите составить прогу (таблица значений) HentaiSan Помощь студентам 3 08.12.2008 20:57
как прогу написать на Pascal? christa Паскаль, Turbo Pascal, PascalABC.NET 3 19.09.2008 19:36
Помогите написать прогу на Pascal Paul VEGA Паскаль, Turbo Pascal, PascalABC.NET 3 14.06.2008 13:54
Помогите написать прогу!Среди заданных целых чисел k, l, m найти пары кратных.Написать по проще чемЭесть vdv08 Паскаль, Turbo Pascal, PascalABC.NET 4 04.04.2008 16:56