Программа для построения БЛОК-СХЕМ!!!
ввести 3 длины сторон треугольника по ним построить треуголь - Бесплатно сделаю блок-схему
Меню сайта

Форма входа

Друзья сайта

  • Программа Ростовщик 1.04

  • Программа расчета кредита

  • Курсовые по информатике

  • Старый, но живой ГОСТ для Блок-Схем

  • Сервис заполнения бланков аттестатов

  • Библиотека VBA для сервиса AntiGate.com

  • Статистика

    Locations of visitors to this page

    Приветствую Вас, Гость · RSS 09.10.2026, 13:50

    [ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
    • Страница 1 из 1
    • 1
    Модератор форума: diamFC  
    ввести 3 длины сторон треугольника по ним построить треуголь
    milka904Дата: Пятница, 25.05.2012, 21:57 | Сообщение # 1
    Рядовой
    Группа: Пользователи
    Сообщений: 2
    Репутация: 0
    Статус: Offline
    исходная задача в для напсиания в турбо паскале:ввести 3 длины сторон трегольника по ним построить трегольник и вписать в него окружность.

    Program Grafika
    uses Graph,crt;
    var a,b,c,x0,y0,r,x1,y1,x2,y2,x3,y3,xc,yc,dx,dy,d1,d2,ba:longint;
    gd,gm,k:integer;
    m,x,h,s:real;

    procedure vvod;
    begin
    repeat
    writeln('Vvedite dliny storon a,b,c:');
    readln(a,b,c);
    if(a>=b+c)or(b>=a+c)or(c>=a+b) then
    writeln('Ne treugolnik, povtorite vvod');
    until(a<b+c)and(b<a+c)and(c<a+b);{проверим что это именно
    длины сторон треугольника}
    end;
    procedure raschety;
    begin
    gd:=0;
    initgraph(gd,gm,'');
    x0:=240 div 2;{центр экрана}
    y0:=320 div 2;
    x:=(a*a+b*b-c*c)/(2*a);{пусть сторона А основание, найдем
    длину отрезка от левого края до основания высоты}
    h:=sqrt(b*b-x*x);{вычислим длину высоты}
    m:=(y0-40)/(h/2);{масштаб если высота больше половины длины основания}
    if (x0-60)/(a/2)<m then m:=(x0-60)/(a/2);{или наоборот}
    {координаты основания}
    y1:=y0+round(h*m/2);{по вертикали ниже центра}
    y2:=y1; {на половину высоты}
    x1:=x0-round(a*m/2);{по горизонтали}
    x2:=x0+round(a*m/2);{влево и вправо на половину основания}
    {координаты вершины}
    x3:=x1+round(x*m);{по горизонтали по основанию высоты}
    y3:=y0-round(h*m/2);{по вертикали выше центра на половину высоты}
    setcolor(12);{рисуем треугольник}
    line(x1,y1,x2,y2);
    line(x2,y2,x3,y3);
    line(x1,y1,x3,y3);
    s:=a*h/2;{площадь треугольника}
    r:=2*round(s*m/(a+b+c));{радиус вписанной окружности}
    d1:=round(a*b*m/(b+c));{длина отрезка от левого конца основания
    до основания бисектрисы на эту сторону}
    dx:=x1+d1;{координата X основания биссектрисы}
    dy:=y1;{координата Y}
    ba:=round(sqrt(sqr(x3-dx)+sqr(y3-dy)));{длина биссектрисы}
    d2:=round(ba*d1/(d1+b*m));{длина части биссектрисы от основания
    до точки пересечения биссектрис}
    xc:=dx+round((x3-dx)*d2/ba);{координаты центра вписанной окружности}
    yc:=dy+round((y3-dy)*d2/ba);
    end;
    procedure ris;
    begin
    setcolor(14);{рисуем окружность}
    circle(xc,yc,r);
    readln;
    end;
    begin
    clrscr;
    repeat
    vvod;
    raschety;
    ris;
    until (k=0);
    end.
    Помогите пожалуйста!!!!!!!!!!
     
    diamFCДата: Пятница, 25.05.2012, 22:56 | Сообщение # 2
    Полковник
    Группа: Администраторы
    Сообщений: 207
    Репутация: 11
    Статус: Offline
    Программа сделана с помощью diamFC
    Прикрепления: 1727997.zip (107.1 Kb)
     
    milka904Дата: Суббота, 26.05.2012, 07:46 | Сообщение # 3
    Рядовой
    Группа: Пользователи
    Сообщений: 2
    Репутация: 0
    Статус: Offline
    спасибо большоооеее!!!!!
     
    • Страница 1 из 1
    • 1
    Поиск:

    Copyright MyCorp © 2026
    Конструктор сайтов — uCoz