.
Отговор в тема
Резултати от 1 до 2 от общо 2

Hybrid View

  1. #1

    Smile Задача за триъгълник в C++

    Здравейте!Госпожата по информатика ни даде следното домашно:Да се състави програма която да осигурява въвеждане от клавиатурата стойности за променливите a,b,c,ha(височина) и с тях да се изчислява S на триъгълник,като резултата се извежда след проверките:
    1)съществува ли реален триъгълник с въведените стойности,ако се знае,че триъгълника съществува,ако сумата на 2 от страните е по-голяма от третата;
    2)да се направи проверка със съобщение дали триъгълника е правоъгълен или не (т.е. дали една от страните (b;c) е равна на височината (ha);
    3)програмата да осигури въвеждането 4 пъти на стойностите.
    Отсъствах от училище доста дълго време и не съм наясно какво трябва да направя стигнах до тук:
    #include <iostream>
    #include <cmath>
    #include <fstream>

    { int a,b,c,ha,s;
    cin>>a;

    cin>>b;

    cin>>c;
    if(a+b<c)
    {
    cout<<"nqma takyv triygylnik"<<endl;
    }
    if(a+c<b)
    {
    cout<<"nqma takyv triygylnik"<<endl;
    }
    if(c+b<a)
    {
    cout<<"nqma takyv triygylnik"<<endl;
    }
    else
    {

    s=sqrt(p*((p-a)*(p-b)*(p-c)));
    }

    cout<<"liceto na triygylnika e "<<s<<endl;

    Дори не знам дали това което съм написала е вярно...Може би задачата е много лесна,но не мога да я реша.Бих се радвала ако някой ми помогне.Благодаря предварително!

    P.S.Търсих из форума подобна задача,но не успях да открия.Все пак ако има такава тема се извинявам,че съм създала нова.

  2. #2
    Мега фен Аватара на Chacho
    Регистриран на
    Nov 2006
    Мнения
    15 573
    Ми не е съвсем вярна, защото else-ът накрая важи за последния if. Тоест, ако не съществува триъгълник по условието на някой от първите два if-a, ще изпише, че няма такъв, но въпреки това може да влезе в else-a, щото може последното условие да е изпълнено. Така хем ще изпише, че няма такъв триъгълник, хем ще сметне някво лице.

    Също така не си си задала главната функция/програма, а само тялото й.

    За лицето ти може да не излезе цяло число, затова ще е хубаво да ползваш float или double.



    Айде после може да се включа пак, че сега нямам много време. Виж int main() как се пише. #include <fstream> не ти трябва. Сложи на негово място обаче "using namespace std;" (без кавичките). За подточка б можеш да ползваш питагорова теорема, за да провериш дали a²+b²=c², като ще ти трябват 3 if-a да провериш дали някоя от страните е хипотенуза (а по-гъзарският начин е да намериш първо най-голямата страна и после един if само за нея). За подточка в) ще ти трябва всичко, което до момента си написала вътре в int main() след int a,b,c,ha,s (препоръчвам ти да декларираш всички като float) да го оградиш в:

    for (int i=0; i<4; i++)
    {
    СЛОЖИ СИ КОДЪТ ТУК
    }

    като return 0;} ще е след този for цикъл.

    Ако имам време, ще ти напиша цялата програма. И моля те, ползвай важната тема, щото ми е по-удобно като се пита на едно място.
    Има 10 вида хора. Тези, които могат да четат двоичен код и тези, които не могат.

Етикети за тази тема

Правила за публикуване

  • Вие не можете да публикувате теми
  • Вие не можете да отговаряте в теми
  • Вие не можете да прикачвате файлове
  • Вие не можете да редактирате мненията си