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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.06.2009, 21:41   #1
Foxtrot_1
Пользователь
 
Аватар для Foxtrot_1
 
Регистрация: 14.06.2009
Сообщений: 67
Стрелка Помогите перевести на С

ТЗ:
1.Написать программу для учета радиостанций.
2.Ввести параметры:
а) координаты,дальность действия стационарных радиостанций (от 0 до 50 км);
б) координаты 2-х людей,дальность действия их переносных радиостанций (от 0 до 50 км);
3.Установить возможность связи двух абонентов с заданными координатами, а также ближайшие к ним станции.
//----------------------------------------------------------------------
Код:
uses crt;
type
Point=record
      x,y:real;
      end;
Stanc=record
      koor:Point;
      daln:byte;
      end;
function Rasst(a,b:Point):real;
begin
Rasst:=sqrt(sqr(a.x-b.x)+sqr(a.y-b.y));
end;
var m:array[1..4] of Stanc;
    ab1,ab2:Stanc;
    i,k:byte;
    min:real;
begin
clrscr;
writeln('Vvedite dannye po stancyam, dalnost ne dolgna prevyshat 50 km:');
for i:=1 to 4 do
 begin
  writeln('Stancya ',i);
  write(' Koordinata X=');readln(m[i].koor.x);
  write(' Koordinata Y=');readln(m[i].koor.y);
  repeat
  write(' Dalnoct=');readln(m[i].daln);
  until m[i].daln in [1..50];
 end;
writeln('Vvedite dannye po abonentam:');
writeln(' Abonent 1:');
write('  Koordinata X=');readln(ab1.koor.x);
write('  Koordinata Y=');readln(ab1.koor.y);
repeat
write('  Dalnoct=');readln(ab1.daln);
until ab1.daln in [1..50];
writeln(' Abonent 2:');
write('  Koordinata X=');readln(ab2.koor.x);
write('  Koordinata Y=');readln(ab2.koor.y);
repeat
write('  Dalnoct=');readln(ab2.daln);
until ab2.daln in [1..50];
if (Rasst(ab1.koor,ab2.koor)<=ab1.daln)and(Rasst(ab1.koor,ab2.koor)<=ab2.daln)
then writeln('Svyas megdy abonentami vozmogna!')
else writeln('Svyas megdy abonentami ne vozmogna!');
min:=50;k:=1;
for i:=1 to 4 do
if Rasst(ab1.koor,m[i].koor)<min then
 begin
  min:=Rasst(ab1.koor,m[i].koor);
  k:=i;
 end;
writeln('Bligayshaya k abonenty 1, stancya',k);
min:=50;k:=1;
for i:=1 to 4 do
if Rasst(ab2.koor,m[i].koor)<min then
 begin
  min:=Rasst(ab2.koor,m[i].koor);
  k:=i;
 end;
writeln('Bligayshaya k abonenty 2, stancya',k);
writeln('press any key for exit');
readkey;
end.
Всегда бывает лучше, чем ты хочешь!!!

Последний раз редактировалось Foxtrot_1; 21.06.2009 в 00:21.
Foxtrot_1 вне форума Ответить с цитированием
Старый 20.06.2009, 21:42   #2
Foxtrot_1
Пользователь
 
Аватар для Foxtrot_1
 
Регистрация: 14.06.2009
Сообщений: 67
По умолчанию

Люди добрые, у кого есть время переведите пожалуйста на С. Сам только учусь, интересно, но пока сложно.
Всегда бывает лучше, чем ты хочешь!!!
Foxtrot_1 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите перевести на VBA never_mind Microsoft Office Excel 23 13.04.2010 07:58