Cho ba số nguyên dương a,b,c viết thuật toán kiểm tra ba số này có phải là ba cạnh của tam giác không? Nếu có tính chu vi của tam giác đó
Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.
uses crt;
var a,b,c:real;
begin
clrscr;
repeat
write('Nhap a='); readln(a);
write('Nhap b='); readln(b);
write('Nhap c='); readln(c);
until (a>0) and (b>0) and (c>0);
if (a+b>c) and (a+c>b) and (b+c>a) then
begin
writeln('La do dai ba canh cua tam giac');
writeln('Chu vi tam giac la: ',a+b+c:4:2);
end
else writeln('Khong phai la do dai 3 canh cua tam giac');
readln;
end.
bạn ơi bạn có thể giải thích giúp mình repeat, until là gì không ạ và hình như chương trình của bạn mình nghĩ chắc đúng rồi đó nhưng bạn xét dùm mình xem chỗ var a,b,c,CV:word thì có đúng kh ạ
uses crt;
var a,b,c,p,s:real;
begin
clrscr;
readln(a,b,c);
if (a>0) and (b>0) and (c>0) and (a+b>c) and (a+c>b) and (b+c>a) then
begin
p:=(a+b+c)/2;
s:=sqrt(p*(p-a)*(p-b)*(p-c));
writeln('Chu vi la: ',2*p:4:2);
writeln('Dien tich la: ',s:4:2);
end
else writeln('A B C khong phai la chieu dai ba canh cua mot tam giac');
readln;
end.
a = int(input())
b = int(input())
c = int(input())
if a**2+b**2==c**2:
print(a,b,c,"la ba canh cua tam giac")
elif a**2+c**2==b**2:
print(a,b,c,"la ba canh cua tam giac")
elif b**2+c**2==a**2:
print(a,b,c,"la ba canh cua tam giac")
else:
print(a,b,c,"khong la ba canh cua tam giac")
uses crt;
var a,b,c,p,s:real;
begin
clrscr;
repeat
write('Nhap a='); readln(a);
write('Nhap b=');c readln(b);
write('Nhap c='); readln(c);
until (a>0) and (b>0) and (c>0);
if (a+b>c) and (a+c>b) and (b+c>a) then
begin
kt:=0;
if sqr(a)=sqr(b)+sqr(c) then kt:=1;
if sqr(b)=sqr(a)+sqr(c) then kt:=1;
if sqr(c)=sqr(a)+sqr(b) then kt:=1;
if kt=0 then writeln('Day khong la tam giac vuong')
else begin
writeln('Day la ba canh trong mot tam giac vuong');
p:=(a+b+c)/2;
s:=sqrt(p*(p-a)*(p-b)*(p-c));
writeln('Dien tich tam giac vuong la: ',s:4:2);
end;
end
else writeln('Day khong la ba canh trong mot tam giac');
readln;
end.
uses crt;
const fi='bai1.inp';
var f1:text;
a,b,c,cv,dt,p:real;
begin
clrscr;
assign(f1,fi); rewrite(f1);
write('Nhap a='); readln(a);
write('Nhap b='); readln(b);
write('Nhap c='); readln(c);
if (a>0) and (b>0) and (c>0) and (a+b>c) and (a+c>b) and (b+c>a) then
begin
cv:=a+b+c;
p:=cv/2;
dt:=sqrt(p*(p-a)*(p-b)*(p-c));
writeln(f1,'Chu vi la: ',cv:4:2);
writeln(f1,'Dien tich la: ',dt:4:2);
end
else writeln(f1,'Day khong la ba canh trong mot tam giac');
close(f1);
readln;
end.
cho em hỏi cái này viết ra thuật toán thì viết kiểu sao ạ
PROGRAM DIEN TICH TAM GIAC;
{Nhap vao do dai 3 canh tam giac. Tinh dien tich tam giac ay}
VAR a,b,c,p,S:real;kt:boolean;{kt: kiem tra}
BEGIN
Write('Nhap a: ');readln(a);
Write('Nhap b: ');readln(b);
Write('Nhap c: ');readln(c);
Writeln;
kt:=(a>0)and(b>0)and(c>0)and(a+b>c)
and(b+c>a)and(a+c>b);
If kt=true then
begin
p:=(a+b+c)/2;
S:=sqrt(p*(p-a)*(p-b)*(p-c));
writeln('Dien tich S= ',S:6:2);
end
Else writeln(,'Khong thuc hien vi day khong la do dai 3 canh tam giac');
Readln
END.
* Xin chú ý với bạn rằng: Trước khi tính diện tích tam giác, ta phải kiểm tra xem ba độ dài a, b, c có phải là ba cạnh của tam giác hay không, cho nên cần phải có biến kt:boolean;{kt: kiem tra}
kt:=(a>0)and(b>0)and(c>0)and(a+b>c)
and(b+c>a)and(a+c>b)
Chúc bạn học tốt!
#include <bits/stdc++.h>
using namespace std;
long long a,b,c;
bool kt;
int main()
{
cin>>a>>b>>c;
kt=true;
if ((a+b>c) and (a+c>b) and (b+c>a)) kt=true;
else kt=false;
if (kt==true) then
{
cout<<"Day la ba canh cua mot tam giac"<<endl;
cout<<"Chu vi la:"<<a+b+c;
}
if (kt==false) cout<<"Day khong la ba canh trong mot tam giac";
return 0;
}