Премини към съдържанието

Препоръчан отговор


Привет колеги, от няколко седмици се опитвам да намеря решение на един проблем с една програма на С++. Самата програма общо взето намира лицето на триъгълник или трапец по дадени три страни като входните данни се записват в обща памет с помоща на обединения. Въвеждам стойностите на страните като преди това съм си пресметнал отговора за да си направа проверка и винаги ми изчислява грешен резултат а формулите за правилни. Моля някой да помогне :(

 

Ето го и сорс-кода:

 

#include<iostream>#include<stdio.h>#include<cmath>void main (){ int vid;union trapec {double a,b,h;};union triagalnik {double a,b,c;};union trapec tra;union triagalnik tri;double s,p;printf("izberete figuran");printf("1-trapec,2-triagalnik:");scanf("%d",&vid);switch(vid){case 1: printf("trapec!n");   printf("vavedi strana tra.a=");   scanf("%lf",&tra.a);   printf("vavedi strana tra.b=");   scanf("%lf",&tra.b);   printf("vavedi strana tra.h=");     scanf("%lf",&tra.h);     if( (tra.a>0) && (tra.b>0) && (tra.h>0) )     {     s=0.5*(tra.a+tra.b)*tra.h;     }   printf("s=%1fn",s);   break; case 2: printf("triagalnik!n"); printf("vavedi strana tri.a="); scanf("%lf",&tri.a);   printf("vavedi strana tri.b="); scanf("%lf",&tri.b);   printf("vavedi strana tri.c="); scanf("%lf",&tri.c); if( (tri.a+tri.b>tri.c) && (tri.a+tri.c>tri.b) && (tri.b+tri.c>tri.a) ) { p=(tri.a+tri.b+tri.c)/2;   s= sqrt(p*(p-tri.a)*(p-tri.b)*(p-tri.c)); printf("s=%lfn,p=%lfn",s,p); }       break;   default:printf("Greshka!n");}system ("PAUSE");} 

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Привет колеги, от няколко седмици се опитвам да намеря решение на един проблем с една програма на С++. Самата програма общо взето намира лицето на триъгълник или трапец по дадени три страни като входните данни се записват в обща памет с помоща на обединения. Въвеждам стойностите на страните като преди това съм си пресметнал отговора за да си направа проверка и винаги ми изчислява грешен резултат а формулите за правилни. Моля някой да помогне :(

Ползваш union а всъщност имаш предвид struct. Моля прочети разликата между двете, защото е особено голяма.

  • Харесва ми 1

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Ползваш union а всъщност имаш предвид struct. Моля прочети разликата между двете, защото е особено голяма.

Колега, благодаря много за точния отговор :) Всичко си дойде на място, много главоболия ми спести, имаш една бира от мене :D

  • Харесва ми 1

Сподели този отговор


Линк към този отговор
Сподели в други сайтове

Регистрирайте се или влезете в профила си за да коментирате

Трябва да имате регистрация за да може да коментирате това

Регистрирайте се

Създайте нова регистрация в нашия форум. Лесно е!

Нова регистрация

Вход

Имате регистрация? Влезте от тук.

Вход

×

Информация

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