1. Trang chủ
  2. » Giáo Dục - Đào Tạo

BÀI TẬP TIN HỌC ĐẠI CƯƠNG - PHẦN II pot

18 388 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 18
Dung lượng 225,5 KB

Nội dung

+ Đọc giá trị các biến a,b,c từ bàn phím.. + Nếu delta=0 thì phương trình có nghiệm kép.. Nếu delta >0 thì phương trình có 2 nghiệm thực Nếu delta io.h> ta; #include... + Dùng thuật toá

Trang 1

PHẦN II : LỆNH ĐIỀU KIỆN

+ IF

+ LỆNH SWITCH CASE

+ TOÁN TỬ ?

ûp chương trình nhập các hệ số a, b, c, d, e, f, vào máy từ

ìn phím rồi giải và biện luận hệ phương trình sau:

1 Lâ

ba

{ ax + by = c

dx + ey = f

* Thuật toán:

+ có thể khai báo các biê

ún : a,b,c,d,e,f, dinhthuc,dx,dy:real; các giá trị củ a,b,c,d,e,f từ bàn phím

Gán : dinhthuc=a*e -d*b;

0 hoặc dy <> 0thì Hệ phương trình vô nghiệm

+

dx=c*e -f*b;

dy=a*f-d*c;

Nếu dinhthuc <> 0 thì hệ phư

Nghiem x = (dx/dinhthuc);

Nghiem y = (dy/dinhthuc)

Ngược lại Nếu dx <>

ngược lại hệ phương trình vô định

* Chương trình

<math.h>

#include

nclude

#i <stdio.h>

onio.h>

hthuc,dx,dy;

#include <c

main()

{

clrscr();

float a,b,c,d,e,f,din

");

printf(" nhap a=

scanf("%f",&a);

Trang 2

printf(" nhap b=");

);

);

);

f=");

);

*e-f*b;

e if (dx!=0) printf(" he phuong trinh vo nghiem");

se printf(" He phuong trinh vo dinh");

tch();

h giải phương trình bậc hai : ax2 + bx + c = 0

scanf("%f",&b);

printf(" nhap c="

scanf("%f",&c);

printf(" nhap d="

scanf("%f",&d);

printf(" nhap e="

scanf("%f",&e);

printf(" nhap

scanf("%f",&f

dinhthuc=a*e-d*b;

dx=c

dy=a*f-d*c;

if (dinhthuc!=0)

{

printf("nghiem x=%0.2f",dx/dinhthuc);

printf("nghiem y=%0.2f",dy/dinhthuc);

}

els

el

ge

}

2.Lập chương trìn

với a, b, c khác không

* Thuật toán:

+ Khai báo các biến a,b,c,delta, x1,x2

+ Đọc giá trị các biến a,b,c từ bàn phím

+ Lập Delta=b2 -4*a*c

+ Nếu delta=0 thì phương trình có nghiệm kép

Nếu delta >0 thì phương trình có 2 nghiệm thực

Nếu delta <0 thì phương trình vô nghiệm

àn hình

+

+

+ Viết kết quả ra m

* Chương trình

#include <stdio.h>

h.h>

io.h>

ta;

#include <mat

#include <con

void main()

{ clrscr();

float a, b, c, del

Trang 3

printf("\nGiai phuong trinh bac hai AXý + BX + C = 0");

ba he so A : ");

he so B : ");

biet ba he so C : ");

c;

tf("Phuong trinh vo nghiem");

e if (delta == 0)

f("Phuong trinh co hai nghiem phan biet\nx1 = %0.2f", (-b

))/(2*a));

intf("\nx2 = %0.2f", (-b - sqrt(delta))/(2*a));

Lập chương trình giải bất phương trình bậc hai :

printf("\nCho biet

scanf("%f", &a);

printf("\nCho biet

scanf("%f", &b);

printf("\nCho

scanf("%f", &c);

delta = b * b - 4 * a *

if (delta<0)

prin

els

printf("Phuong trinh co nghiem kep x1 = x2 = %0.2f", -b/(2*a)); else

{

print

+ sqrt(delta

pr

}

getch();

}

3

ax2 + bx + c > 0 với a, b, c bất kỳ

* Thuật toán:

+ Khai báo các biến a,b,c,x1,x2,delta,x;

+

ợc lại

ơng trình x>-c/b +

trinh dung moi x;

iệm x1=(-b-sqrt(delta))/(2*a)

delta))/(2*a) Ng

+ Nếu

Nếu delta <=0 thì bất phương trình vô nghiệm

Nếu delta >0 Thì

ơng trình x1<x<x2

Đọc giá trị các biến từ bàn phím

Nếu a=0 và b=0 và c=

Ngược lại nếu a=0

Nếu b=0 thìkhong phai bat phuong trinh

Ngư

Nếu b>0 thì nghiệm bất phư

Nếu b<0 thì nghiem bat phuong trinh x<-c/b

Nếu a>0 thì

lập delta:=sqr(b)-4*a*c;

Nếu delta <=0 thì bat phuong

Nếu delta >0 thì bất phương trình có ngh

x2:=(-b+sqrt(

hiệm bất phương trình x<x1 hoặc x>x2

a<0 Thì

Nghiệm bất phư

Trang 4

* Chæång trçnh

#include <stdio.h>

h.h>

clude <conio.h>

2,x, delta;

hai AXý + BX + C > 0");

ba he so A : ");

he so B : ");

==0)&&(b==0)&& (c==0))

moi ban nhap lai cac he so a,b,c nhe");

f (b==0)

(b>0) printf(" nghiem cua bat phuong trinh>%0.2f",-c/b);

printf(" nghiem cua bat phuong trinh<%0.2f",-c/b);

= b * b - 4 * a * c;

g trinh dung voi moi x");

sqrt(delta))/(2*a);

"nghiem cua bat phuong trinh x<%0.2f",x1);

ac x>%0.2f",x2);

- 4 * a * c;

#include <mat

#in

void main()

{

clrscr();

float a, b, c,x1,x

printf("\nGiai bat phuong trinh bac

printf("\nCho biet

scanf("%f", &a);

printf("\nCho biet

scanf("%f", &b);

printf("\nCho biet ba he so C : ");

scanf("%f", &c);

if ((a

printf("Xin

else if (a==0)

{

i

printf("khong phai la bat phuong trinh -hay nhap lai"); else

{

if

if (b<0)

}

}

if (a>0)

{

delta

if (delta<=0) printf(" Bat phuon

if (delta>0)

x1=(-b-sqrt(delta))/(2*a);

x2=(-b+

printf(

printf(" ho

if (a<0)

{

delta = b * b

Trang 5

if (delta<=0)

printf("Bat phuong trinh vo nghiem ");

=(-b-sqrt(delta))/(2*a);

2=(-b+sqrt(delta))/(2*a);

nghiem cua bat phuong trinh x>%0.2f",x2);

printf(" va x<%0.2f",x1);

}

getch();

if (delta>0)

{

x1

x

printf("

}

}

4 Tính an

* Thuật toán:

+ Khai báo các biến a,n

+ Đọc các giá trị của a,n từ bàn phím

g tính gược lại thì tính theo biểu thức: Exp(n*ln(a))

ìn hình

+ Nếu a<0 thì khôn

n

+ Viết kết quả ra ma

* Chương trình

#include <stdio.h>

clude <math.h>

io.h>

hap n=");

nf("%f",&n);

f mu %lf la %lf\n",a,n,exp(n*log(a)));

#in

#include <con

void main()

{

clrscr();

float a,n;

printf(" nhap a=");

scanf("%f",&a);

printf(" n

sca

if (a<0) printf(" khong tinh duoc");

else printf("%l

getch();

}

5 Nhập 4 số a, b, c, d Tìm giá trị lớn nhất (maximum)

* Thuật toán:

+ Khai báo các biến : a,b,c,d,max

Trang 6

+ Dùng thuật toán lính canh: gán max= phần tử bất kỳ rồi lấy

o sánh với max

àn hình

các phần tử khác đem s

+ Viết kết quả max ra m

* Chương trình

io.h>

th.h>

max=b;

(c>max) max=c;

Chứng minh có phải là độ dài của 3

giác cân, đều, vuông,

*

#include <std

#include <ma

#include <conio.h>

void main()

{

clrscr();

float a,b,c,d,max;

printf(" nhap a=");

scanf("%f",&a);

printf(" nhap b=");

scanf("%f",&b);

printf(" nhap c=");

scanf("%f",&c);

printf(" nhap d=");

scanf("%f",&d);

/*dung thuat toan linh canh*/

max=a;

if (b>max)

if

if (d>max) max=d;

printf(" Gia tri lon nhat la=%f",max);

getch();

}

6 Nhập 3 giá trị a, b, c

cạnh của một tam giác không ? Tìm tam

vuông cân, tam giác thường

Thuật toán:

+

+ các biến từ bàn phím

+

ì (a> 0)

iác đều

Khai báo các biến a,b,c

Đọc giá trị

Nếu (a+b>c) và ( a+c> b)

và (b+c>a) va

và (c > 0) và (a > 0) thì

Nếu (a=b) and (b=c) and (c=a) tam g

Trang 7

Ngược lại

Nếu (a=b) hoặc (b=c) hoặc (a=c) thì tam giác cân

Ngược lại

Nếu ((a*a+b*b=sqr(c)) và (a=b)) hoặc

hoặc ((c*c+b*b=a*a)và (c=b)) thì tam giác vuông cân

Nếu(sqr(a)=b*b+c*c) hoặc (b*b=a*a+c*c) hoặc(c*c=a*a+b*b) thì

iác thường hông hợp lệ

rình

((sqr(a)+sqr(c)=b*b)và (a=c))

Ngược lại

Tam giác vuông

Ngược lại tam g

Ngược lại nhập k

* Chương t

io.h>

h>

f("%f",&a);

);

f(" Tam giac deu");

e if ((a==b)||(b==c)||(a==c)) printf(" Tam giac can");

a+c*c==b*b) &&(a==c))

=a*a)&&(c==b))) printf("Tam giac vuong can");

e if ((a*a==b*b+c*c)||(b*b==a*a+c*c)||(c*c==a*a+b*b))

printf("Tam giac vuong");

tf("Tam giac thuong");

tam giac khong hop le");

#include <std

#include <math

#include <conio.h>

void main()

{

clrscr();

float a,b,c;

printf(" nhap a=");

scan

printf(" nhap b=");

scanf("%f",&b);

printf(" nhap c=");

scanf("%f",&c);

if ((a+b>c) && (a+c>b) && (b+c>a) &&(a>0)&&(b>0)&& (c>0))

{

printf("a,b,c la canh cua "

if ((a==b)&&(b==c)&&(c==a)) print

els

else if (((a*a+b*b==c*c)&&(a==b))||((a*

||((c*c+b*b=

els

else prin

}

else printf("

getch();

}

Trang 8

7 Lậ o độ ba điểm A, B, và O Tính góc hình họ

Hướng dẫn:

+Nhập tọa đô b,yb), C(xc,yc), O(xo,y0 )

Tính

Cos = ((xa - x0)*(xb-x0) + (ya - y0)*(yb - y0))/(OA*OB)

ía gócAOB + Từ

p chương trình đọc vào tạ

c AOB

ü điểm A(xa, ya), B(x +

2 2

) (

) (x x y y

2 2

0

(x x y y

+ Từ cos của góc AOB tính sin của góc AOB và tg cu

tg của góc AOB ta dùng hàm ngược ARCTAN để tính góc AOB

* Thuật toán:

+ ïc biến : Xa,Ya, Xo, Yo, Xb,Yb,goc,OA,OB,cos,tg

+ G ((xa-xo)*(xa-xo)+(ya-yo)*(ya-xo));

ob=sqrt((xb-xo)*(xb-xo)+(yb-yo)*(yb-xo));

thuc cua tich vo huong suy ra cosin goc AOB}

-Yo)*(Yb-Yo))/(OA*OB);

+ Nếu

goc=pi Ngược lại

ì goc=pi/2

cos))/cos;

{ don vi Radian}

<0 Thì goc=pi/2 -goc;

iết kết quả góc

Khai báo ca

Đọc giá trị của các biến

án oa=sqrt

{ Theo cong

cos=((Xa-Xo)*(Xb-Xo) + (Ya

cos =1 thì goc=0

Ngược lại

Nếu cos=-1 thì

Nếu cos=0 th

Ngược lại

tg=sqrt(1-sqr(

goc=arctan(tg);

Nếu goc

+ V

* Chương trình

#include <stdio.h>

#include <math.h>

#include <conio.h>

void main()

{

clrscr();

float xa,ya,xo,yo,xb,yb,goc,cos,oa,ob,tg;

h goc con lai cua tam giac\n");

printf("Chuong trinh tin

printf("Vao lan luot cac diem\n ");

printf(" Toa do cua diem A: Xa,Ya=");

Trang 9

scanf("%f%f",&xa,&ya);

printf(" Toa do cua diem B: Xb,Yb=");

scanf("%f%f",&xb,&yb);

o,Yo=");

t((xa-xo)*(xa-xo)+(ya-yo)*(ya-xo));

o)*(yb-xo));

uong suy ra cosin cua goc AOB

*(yb-yo))/(oa*ob);

os==1) goc=0;

-1) goc=M_PI;

rt(1-cos*cos)/cos;

c=atan(tg);// don vi Radian

if (goc<0) goc=M_PI/2-goc;

Goc AOB=%f\n",goc);

80/M_PI);

nh giải tam giác khi biết ba cạnh

ớng dẫn: Muốn giải tam giác khi biết ba cạnh ta dùng hệ thức

để

*

printf(" Toa do cua diem O: X

scanf("%f%f",&xo,&yo);

oa=sqr

ob=sqrt((xb-xo)*(xb-xo)+(yb-y

//Tinh theo cong thuc tich vo h

cos=((xa-xo)*(xb-xo)+(ya-yo)

if (c

else if (cos==

else if (goc==0) goc=M_PI/2;

else

{ tg=sq

go

}

printf("\n");

printf("

printf(" Tinh theo do=%f\n",goc*1

getch();

}

8 Lập chương trì

cosin:

2 2 2

a =b + c - 2bc.cosA

2 2 2

b =a + c - 2ac.cosB

2 2 2

C

c =a + b - 2ab.cos óc

tính các g

Thuật toán:

+

0 thì goc:=pi/2

sqr(cos))/cos;

0 thì goc:=pi/2 -goc;

, cosC}

Khai báo các biến a,b,c,cos

Đọc giá trị các bi

gán cos:=(b*b +c*c -a*a)/(2*b*c);

Nếu cos =

Ngược lại

Nếu cos =-1 thì goc:=pi

Ngược lại

tg:=sqrt(1-goc:=arctan(tg);

Nếu goc <

gA:=goc;

{Tương tự cho cosB

cos:=(a*a +c*c -b*b)/(2*a*c);

Trang 10

Nếu cos =0 thì goc:=pi/2

sqr(cos))/cos;

thì goc:=pi/2 -goc;

Nếu cos =0 thì goc:=pi/2

ược lại

cos))/cos;

goc:=arctan(tg);

oc:=pi/2 -goc;

A,B,C ra màn hình

ình

Ngược lại

Nếu cos =-1 thì goc:=pi

Ngược lại

tg:=sqrt(1-goc:=arctan(tg);

Nếu goc < 0

gB:=goc;

cos:=(a*a +b*b -c*c)/(2*a*b);

Ngược lại

Nếu cos =-1 thì goc:=pi

Ng

tg:=sqrt(1-sqr(

Nếu goc < 0 thì g

gC:=goc;

Viết góc

* Chương tr

#include <stdio.h>

#include <math.h>

#include <conio.h>

void main()

{

clrscr();

float a,b,c,tg,goc,goca,gocb,gocc,cos;

printf(" nhap a=");

scanf("%f",&a);

printf(" nhap b=");

scanf("%f",&b);

f(" nhap c=");

thuc a^2=b^2+c^2-2bcCosA

os==0) goc=M_PI/2;

==-1) goc=M_PI;

goc<0) goc=M_PI/2-goc;

print

scanf("%f",&c);

//tinh cos tu he

cos=(b*b+c*c-a*a)/(2*b*c);

if (c

else if (cos

else

{

tg=sqrt(1-cos*cos)/cos;

goc=atan(tg);

if (

Trang 11

}

goca=goc;

//tuong tu cho CosB

os==0) goc=M_PI/2;

==-1) goc=M_PI;

goc<0) goc=M_PI/2-goc;

osC

os==0) goc=M_PI/2;

==-1) goc=M_PI;

ntf(" Tam giac ABC co:\n");

printf(" GocA=%f\n",goca);

cc);

R de ket thuc");

getch();

ì bàn phím một số nguyên n (1 ≤ n ≤ ) rồi đưa ra tiếng Anh của số đó Chẳng hạn, nếu gõ vào n = 4

our

Thuật toán:

cos=(a*a+c*c-b*b)/(2*a*c);

if (c

else if (cos

else

{

tg=sqrt(1-cos*cos)/cos;

goc=atan(tg);

if (

}

gocb=goc;

//tuong tu cho C

cos=(a*a+b*b-c*c)/(2*a*b);

if (c

else if (cos

else

{

tg=sqrt(1-cos*cos)/cos;

goc=atan(tg);

if (goc<0) goc=M_PI/2-goc;

}

gocc=goc;

pri

printf(" theo do=%f\n",180*goca/M_PI);

printf(" GocB=%f\n",gocb);

printf(" GocC=%f\n",go

printf("An ENTE

}

9.Lập chương trình đọc tư

10

thì đưa ra : 4 →F

*

ến so từ bàn phím

witch … case

trình

+ Khai báo biến so

+ Đọc giá trị của bi

+ Dùng s

* Chương

#include <math.h>

Trang 12

#include <stdio.h>

h>

se 4:printf("Four"); break;

rintf("Five"); break;

ase 6:printf("Six"); break;

ntf("Seven"); break;

rintf("Ten"); break;

ûn, biết rằng giá trong định mức là 1000đ/1kwh,

á ngoài định mức là 2000đ/1kwh.Biết rằng quy định định mức

*

#include <conio

main()

{

clrscr();

int so;

printf(" nhap so=");

scanf("%i",&so);

switch (so) {

case 1: printf("One"); break;

case 2: printf("Two"); break;

case 3:printf("Three"); break;

ca

case 5:p

c

case 7:pri

case 8:printf("Eigth"); break;

case 9:printf("Nine"); break;

case 10:p

}

getch();

}

10 Tính tiền điê

gi

như sau:

+ Hộ dân 60KWh/1tháng

+ Hộ cán bộ 90KWh/tháng

+ Hộ kinh doanh 200KWh/tháng

+ Hộ sản xuất 450KWh/1tháng

Thuật toán:

DMHCB

DMHKD =200; { Dinh muc ho kinh doanh}

DMHSX =450; { Dinh muc ho san xuat}

h muc}

+

Socu,Somoi { Chi so cua dong ho dien}

tt,kwhdm,kwhvuot{ luong dien}

ndm,tienvuot,ttien{ Tien}

+ Khai báo các hằng:

DMHD =60; { Dinh muc ho dan}

=90; { Dinh muc ho can bo}

DGDM=1000; { Don gia dinh muc}

GNDM=2000; { Gia ngoai din

Khai báo các biến

Kwh

Tie

Ho { Loai ho}

Nhập giá trị các biến từ bàn p

Trang 13

+ t < Kwhdm ) thì

ược lại

Tiendm=Kwhdm*DGDM;

Kwhdm)*GNDM;

+Tienvuot;

Nếu (Kwht

TienDm:=Kwhtt*DGDM;

TienVuot:=0;

Ng

Bắt đầu

Tienvuot=(Kwhtt-Kết thúc

Gán: Ttien=Tiendm

+ In Ttien ra màn hình

* Chương trình

#include <math.h>

#include <stdio.h>

#include <conio.h>

fine DMHD 60 //Dinh muc ho dan

HCB 90 //Dinh muc ho can bo

inh muc Gia ngoai dinh muc

dong ho dien vuot; //luong dien ,tienvuot;

nh tinh tien dien\n ");

chi so cu=");

);

"%c",&ho);

h (ho) {

break;

m=DMHCB; break;

'k': kwhdm=DMHKD; break;

': kwhdm=DMHSX; break;

#de

#define DM

#define DMHKD 200 //Dinh muc ho can bo

#define DMHSX 450 //Dinh muc ho san xuat

#define DGDM 1000 //Don gia d

#define GNDM 2000 //

main()

{

clrscr();

float socu,somoi; //chi so cua

float kwhtt,kwhdm,kwh

float tiendm,ttien

char ho; //loai ho

printf("chuong tri

printf("Nhap

scanf("%f",&socu

printf("Nhap chi so moi=");

scanf("%f",&somoi);

kwhtt=somoi-socu;

printf(" Loai ho ");

scanf(

ho=getch();

switc

case 'd': kwhdm=DMHD;

case 'c': kwhd

case

case 's

}

if (kwhtt<kwhdm)

{

Ngày đăng: 24/07/2014, 15:21

HÌNH ẢNH LIÊN QUAN

Hình chữ nhật , hình t - BÀI TẬP TIN HỌC ĐẠI CƯƠNG - PHẦN II pot
Hình ch ữ nhật , hình t (Trang 14)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w