bai tap c thuong gap

Upload: thai-le

Post on 04-Feb-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/21/2019 Bai Tap c Thuong Gap

    1/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 1/ 127

    Muc Luc BAI 01 .....................................................................................................................3 BAI 01 .....................................................................................................................3 BAI 02 .....................................................................................................................4 BAI 03 .....................................................................................................................7 BAI 04 :.................................................................................................................10 BAI 05 :.................................................................................................................12 BAI 06 ...................................................................................................................14 BAI 07 ...................................................................................................................15 BAI 08 ...................................................................................................................17 BAI 09 ...................................................................................................................18 BAI 10 :.................................................................................................................20 BAI 11 ...................................................................................................................23

    BAI 12 ...................................................................................................................24 BAI 13 ...................................................................................................................29 BAI 14 ...................................................................................................................30 BAI 16 ...................................................................................................................32 BAI 17 ...................................................................................................................34 BAI 18 ...................................................................................................................36 BAI 19 ...................................................................................................................38 BAI 20 ...................................................................................................................40 BAI 21 :.................................................................................................................42 BAI 22 ...................................................................................................................46 BAI 23 :.................................................................................................................48 BAI 24 ...................................................................................................................50 BAI 25 ...................................................................................................................53 BAI 26 ...................................................................................................................56 BAI 27 ...................................................................................................................58 BAI 28 ...................................................................................................................61 BAI 29 ...................................................................................................................64 BAI 30 ...................................................................................................................67 BAI 31 ...................................................................................................................69

    BAI 32 ...................................................................................................................71 BAI 33 :.................................................................................................................73 BAI 34 ...................................................................................................................77 BAI 35 ...................................................................................................................79 BAI 36 ...................................................................................................................82 BAI 37 ...................................................................................................................85

  • 7/21/2019 Bai Tap c Thuong Gap

    2/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 2/ 127

    Bai 38 :..................................................................................................................87 Bai 39 :..................................................................................................................89 Bai 40 ....................................................................................................................91 Bai 41 ....................................................................................................................93 Bai 42 ....................................................................................................................96 Bai 43 ....................................................................................................................98 Bai 44 :................................................................................................................ 102 Bai 45 :................................................................................................................ 105 Bai 46 :................................................................................................................ 109 HET.....................................................................................................................110 Bai 47 ..................................................................................................................110 Bai 48 :................................................................................................................ 119 Bai 49 :................................................................................................................ 120 Bai 50 ;................................................................................................................ 122 Mot So Bai Lam Them , Ti ay Ban Hay T Mnh Nhn Vao Bai Va Suy

    Ra e Bai i Nhe . Hay Th Xem va Toi Ngh La Ban Se Lam c ieuo . ......................................................................................................................124

    Bai Them 1 :.......................................................................................................124 Bai Them 2:........................................................................................................126 Bai Them 3 :.......................................................................................................127

  • 7/21/2019 Bai Tap c Thuong Gap

    3/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 3/ 127

    BAI 01

    1. Y TNG THUAT TOAN Xet 3 he so cua phng trnh trc het xeta=0hoacakhac 0

    a. TH1 :a=0 Ta xet them b =0 hay khac 0 . Neu a=0 ma b=0 th

    phng trnh vo nghiem . Neubkhac 0 th giai bai toangiong nh giai phng trnh bac nhat .

    b. TH2 :akhac 0 Ta tnhDeltava xetDeltaa ra nghiem cua pt

    NeuDelta< 0 : Phng trnh vo nghiem NeuDelta= 0 : Phng trnh co nghiem kep NeuDelta> 0 : Phng trnh co hai nghiem phan

    biet.2. Y NGHA MOT SO BIEN TRONG BAI : a , b ,cla ba he so cua phng trnh . Deltala bien dung e lu gia tr Delta sau khi tnh . x1,x2 : la nghiem cua phng trnh neu pt co 2 nghiem phan biet x : la nghiem neu phng trnh ch co mot nghiem ma thoi

    3. BI GII:

    #include#include#includevoid main (){

    clrscr();float a,b,c,delta;printf("ban hay nhap a,b,c vao ");scanf("%f%f%f",&a,&b,&c);// cac he so cua pt bac 2if (a!=0){delta=b*b-4*a*c;

    if (delta>0){

    printf("phuong trinh co 2 nghiem\n");printf("x1=%f",(-b-sqrt(delta))/(2*a));

    printf("\n");printf("x2=%f",(-b+sqrt(delta))/(2*a));

    }else //TH a0 va delta

  • 7/21/2019 Bai Tap c Thuong Gap

    4/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 4/ 127

    printf("x=%f",-b/(2*a));}else

    printf("phuong trinh vo nghiem ");}

    }

    else{

    if (b!=0)//a luc nay =0{

    printf("phuong trinh co 1 nghiem\n");printf("x=%f",-c/b);

    }else // a=0 va b=0{

    if (c!=0)printf("phuong trinh vo nghiem");

    elseprintf("phuong trinh vo so nghiem");

    }}getch();

    }

    HET

    BAI 02

  • 7/21/2019 Bai Tap c Thuong Gap

    5/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 5/ 127

    1. Y TNG THUAT TOAN:a. Ta lam mot trng hp neu nhap vao khong hp le th bat nhap lai .b. Ngc lai

    Trc het ta quy oi ve so ngay het . Ta xet t nam so 1 cho en nam nhap vao neu thoa

    ieu kien nam nhuan th cong them 1 Ta xet t thang 1 cho en thang nhap vao va lan lt

    cong vi so ngay tng ng ma thang o co ( v du :thang 3 co 31 ngay ).

    Sau khi c mot tong so co c bang cach thc hien 2bc tren th ta cong so o vao so ngay nhap vao . Tac tong so ngay t ngay thang nam th nhat cho en

    ngay thang nam hien tai Theo quy luat cua ngay thang th c 7 ngay th lap lai mot th .V the ta lay tong so ngay tnh c tat ca chia lay phan d cho 7 (V du : neu c 0 th o la chu nhat )

    2. Y NGHA MOT SO BIEN TRONG BAI : Ba bien :ngay, thang,namla cac bien c nhap vao Biens: luc au la cong them 1 neu gap nam nhuan khi dong for i

    chay sau o c gan bang 0 va tnh tong cac ngay cua cac thang . Bient: la bien tnh tong so ngay Bienx: la bien khi t chia lay phan d cho 7 gan cho xroi suy ra

    th. Dong For th nhat chay xet xem neu nam nhuan th cong so ngay

    len 1 Dong For th hai chay xet va cong vao so ngay tng ng cua

    thang o .3.BAI GIAI

    #include #include void main()

    {clrscr();int ngay , thang , nam,s=0,x;long t;do{

    printf("Nhap vao Ngay :");scanf("%d",&ngay);printf("Nhap vao Thang :");

  • 7/21/2019 Bai Tap c Thuong Gap

    6/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 6/ 127

    scanf("%d",&thang);printf("Nhap vao Nam :");scanf("%d",&nam);

    }while(((ngay31)||(thang12))||((thang==2)&&(ngay>29)));

    for(int i=1;i

  • 7/21/2019 Bai Tap c Thuong Gap

    7/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 7/ 127

    case 3:cprintf("Thu Tu ");break;

    case 4:cprintf("Thu Nam ");break;

    case 5:cprintf("Thu Sau ");break;

    case 6:cprintf("Thu Bay ");break;

    }

    getch();

    }

    HET

    BAI 03

    1. Y TNG THUAT TOAN:

  • 7/21/2019 Bai Tap c Thuong Gap

    8/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 8/ 127

    Ta ly sngy xt nu bng 365 th ngy 31 thng 12 nam 0 ,ngc li th ta ly sngy trcho 365 nu l nm nhun th trcho 366

    Xt iu kin thot ta ly sngy cn li trcho sngy catng thng ( v d: ly s ngy tr cho 31 nu ln hn 0 ththng +1 v cthtip tc chy theo vng for cho n khi nokhng tha iu kin trong vng switch case na th thot ra

    Thu c kt quca ngy thng nm .

    2. Y NGHA MOT SO BIEN TRONG BAI : Trong bi chc ba bin quan trng l :ngay,thang,nam

    Binngay: l bin c input . Binthang: l bin tng khi ngy tri theo cu lnh Bin nam : tng tnhbin thng n l kt quca bin

    ngy tri theo cu lnh .

    3.BAI GIAI :

    #include#include

    void main(){

    clrscr();// nam so 0 khong duoc xet la nam nhuanunsigned long ngay,nam=1;int thang=1; //bat dau tu nam so 0

    do{

    printf("Nhap vao so ngay : ");scanf("%lu",&ngay);

    }while(ngay=366)//dieu kien de xet so nam{

    if(((nam%4==0)&&(nam%100!=0))||(nam%400==0))

    ngay-=366;else

    ngay-=365;nam++;if(ngay==0){

    thang=12;

  • 7/21/2019 Bai Tap c Thuong Gap

    9/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 9/ 127

    ngay=31;nam-=1;break;

    }}

    while(ngay>=28){

    if(thang==12)break;

    switch(thang){

    case 1:case 3:case 5:

    case 7:case 8:case 10:

    if((ngay-31)>0){

    ngay-=31;thang+=1;

    }break;

    case 2:

    if(((nam%4==0)&&(nam%100!=0))||(nam%400==0)){

    if((ngay-29)>0){

    thang+=1;ngay-=29;

    }else

    break;}else

    {if((ngay-28)>0){

    ngay-=28;thang+=1;

    }else

  • 7/21/2019 Bai Tap c Thuong Gap

    10/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 10/ 127

    break;}break;

    default :if((ngay-30)>0)

    {thang+=1;ngay-=30;

    }break;

    }}

    printf("\n Doi ra ngay thang la ");printf("%lu - %d - %d",ngay,thang,nam);getch();

    }

    HT

    BAI 04 :

    1. Y TNG THUAT TOAN: Bi ny cng tng tnhhai bi trn nhng ta li xt thng

    trc n snhanh hn .Nu thng hp lth ta xt nm v ngy

  • 7/21/2019 Bai Tap c Thuong Gap

    11/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 11/ 127

    2. Y NGHA CUA MOT SO BIEN TRONG BAI: Trong bi ny cng ch c 3 bin : ngay , thang ,namC 3 bin

    ny u l bin input

    3.BAI GIAI :

    #include#includevoid main(){

    clrscr();unsigned long nam;int ngay, thang;printf("Nhap vao ngay ");scanf("%d",&ngay);printf("Nhap vao Thang ");scanf("%d",&thang);printf("Nhap vao Nam ");

    scanf("%lu",&nam);switch(thang){

    case 1:case 3:case 5:case 7:case 8:case 10:case 12:

    if((ngay>0)&&(ngay0))printf(" Ngay nay la ngay hop le");

    else

    printf(" Ngay nay la ngay khong hop le");break;case 2:

    if(((nam%4==0)&&(nam%100!=0))||(nam%400==0)){

    if((ngay>0)&&(ngay0)&&(ngay0)&&(ngay0))

  • 7/21/2019 Bai Tap c Thuong Gap

    12/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 12/ 127

    printf(" Ngay nay la ngay hop le");elseprintf(" Ngay nay la ngay khong hop le");break;

    default : printf("Ngay nay la ngay khong hop le ");

    }getch();

    }

    HT

    BAI 05 :

    1. Y TNG THUAT TOAN :Bi ny khai bo mt bin k tso snh vi m phm input

    Nu nhp 1 th nhp chiu di & rng ca hnh chnht

  • 7/21/2019 Bai Tap c Thuong Gap

    13/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 13/ 127

    Cch in ra hnh chnht nhsau : In ra mt dng * c chiu di l di ca

    hnh

    Sau xung dng in ra k t * v in mtdng khong trng nhhn di l 2 ri ink t* v xung hng

    Cnhthlp li sln = chiu rng tr2 In mt dng * cui cng bng di ca hnh

    Nu nhp vo 2 th nhp cnh ca hnh vungCch in hnh vung tng tnhhnh chnht

    2. Y NGHA CUA MOT SO BIEN TRONG BAI :Trong bi ny c bin menul bin nhn m phm v iu khinvhnhCc bin a,b: l di ca hnh cn v

    3.BAI GIAI :

    #include#includevoid main(){

    clrscr();char menu;int a,b;do{

    printf(" Bam phim 1 de ve hinh chu nhat \n");printf(" Bam phim 2 de ve hinh Vuong \n");printf(" Bam phim 3 de thoat chuong trinh \n");printf(" Nhap vao mot so de thuc hien \n");fflush(stdin);scanf("%c",&menu);

    /*-----------Ve Hinh Chu Nhat --------------------*/if(menu=='1'){

    printf("Nhap vao chieu dai cua hinh ");scanf("%d",&a);printf("Nhap vao chieu rong cua hinh ");scanf("%d",&b);

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    14/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 14/ 127

    }if(a>1)//In ra dong cuoi,truong hop a=1 neu In se du mot dong{

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    15/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 15/ 127

    2. Y NGHA CUA MOT SO BIEN TRONG BAI :

    Trong bi ta t bin il bin snguyn tnhnht i =2

    nl bin input cn phn tch

    3.BAI GIAI :

    #include#includevoid main(){

    clrscr();unsigned long n,i=2;printf("Nhap vao so can phan tich ");scanf("%lu",&n);while(i

  • 7/21/2019 Bai Tap c Thuong Gap

    16/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 16/ 127

    Cch 2 : Cho vng for i chy t1 n scn kim tranu i*i = = n th xut ra n l schnh phng v thotchng trnh

    2. Y NGHA MOT SO BIEN TRONG BAI :o n: l bin inputo flag :l bin c bit ng hay sai nu bng 1 l s chnh

    phng

    3.BAI GIAI :

    #include#include#includevoid main(){

    clrscr();float n;int flag=0;printf("Nhap vao mot so ");scanf("%f",&n);

    /*-------------------Cach 1 ------------------------------*/for(float i=1;i

  • 7/21/2019 Bai Tap c Thuong Gap

    17/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 17/ 127

    BAI 08

    1. Y TNG THUAT TOAN:nh ngha : Snguyn t l schchia ht cho 1 v chnh n

    iu kin l ln hn 1 .

    i vi bi ny c rt nhiu cch lm nhng ti nghcch sau lcc bn dhiu nht

    Cho mt vng lp for i chy t 2 cho n s cnkim tra nu s chia ht cho i th m s lnchia ht

  • 7/21/2019 Bai Tap c Thuong Gap

    18/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 18/ 127

    Kt lun nu sln chia ht l 1 th l snguyn tngc li khng phi

    2. Y NGHA MOT SO BIEN TRONG BAI :

    n: l bin inputi: lu ng t2 n ndem: m sln n chia ht cho i

    3.BAI GIAI :#include#includevoid main(){

    clrscr();unsigned long n;int dem=0;

    printf(" Ban hay nhap vao so ");scanf("%lu",&n);for(unsigned long i=2;i =bth ta lay a cho b cho en khi nao a nho hnb . Lu y : (Neu a=0 th thoat ) . Neu 0 < a =a Cuoi cung

  • 7/21/2019 Bai Tap c Thuong Gap

    19/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 19/ 127

    - Neu a=0 th c chung ln nhat la b va boi chung nhonhat la (x * y ) /b .

    - Neu ngc lai th c chung ln nhat la a va boi chungnho nhat la ( x * y)/a

    2. Y NGHA MOT SO BIEN TRONG BAI:- Trong bai ch co hai bien quan trong o la x,yla 2 bien input vaa, b

    la hai bien gan tam thi bang gia tr x ,ye khi thc hien se khonglam anh hng en gia tr cua hai so input ban au.

    3.BAI GIAI :

    #include#includevoid main()

    { clrscr();/* -------------tim Uoc so chung lon nhat ----------*/unsigned long a,b,x,y;printf("Nhap vao so thu nhat ");scanf("%lu",&a);printf("Nhap vao so thu hai ");scanf("%lu",&b);x=a ; y=b;while((a!=0)&&(b!=0)){

    if(a>=b)a-=b;

    else

    b-=a;}

    /* boi so chung nho nhat la tich cua hai so chia cho USCLN */

    if(a==0){

    printf(" Uoc so chung lon nhat la %lu \n" ,b);printf(" Boi so chung nho nhat la %lu ",(x*y)/b);

    }else{

    printf("Uoc so chung lon nhat la %lu \n",a);printf(" Boi so chung nho nhat la %lu ",(x*y)/a);

    }getch();

    }

    HT

  • 7/21/2019 Bai Tap c Thuong Gap

    20/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 20/ 127

    BAI 10 :

    1. Y TNG THUAT TOAN : Trong bai nay th chu yeu la ta biet khong che va in ra lng dau *

    cho phu hp vi nh dang cua hnh ma can in . Thng la ta cho mot vong lap khong che so hang dau * in ra , mot

    vong lap in ra so khoang trang va mot vong lap in ra dau * . Nhngcung nen lu y hai vong lap nay phai ong thi lan nhau theo tngnh dang hnh can in .

    2. Y NGHA MOT SO BIEN TRONG BAI :

  • 7/21/2019 Bai Tap c Thuong Gap

    21/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 21/ 127

    Trong bai ch co bien h la bien chieu cao input t ngi dung , cacbien con lai eu la bien chay cua cac vong lap .

    3.BAI GIAI :

    // chuong trinh in tam giac ra man hinh //#include#includevoid main(){

    clrscr();int h,i,j,k,t;printf("Nhap Vao Chieu Cao Cua Hinh Tam Giac h= ");scanf("%d",&h);

    printf("\n");//-------------In Tam Giac Thu 1 & Thu 2---------------------//for(t=0;t

  • 7/21/2019 Bai Tap c Thuong Gap

    22/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 22/ 127

    //-----------In Tam Giac Thu 4-------------------------------//printf("\n");getch();for(i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    23/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 23/ 127

    HET

    BAI 11

    1. Y TNG THUAT TOAN: bai nay ta in ra mot dong hang ngang trc

    ( VD : 1 x 1 = 1 2 x 1 = 2 3 x 1 = 3 4 x 1 = 4 10 x 1 =10) Sau o xuong hang va tang tch len

    2. Y NGHA MOT SO BIEN TRONG BAI :I :la so dong cua bang cu chng ong vai tro la tch

    J: la so cot cua bang cu chng ong vai tro la tha so3.BAI GIAI :

    #include#includevoid main(){

  • 7/21/2019 Bai Tap c Thuong Gap

    24/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 24/ 127

    clrscr();printf("\n\n\t\t\t\tBang Cuu Chuong \n\n\n");for(int i=1;i

  • 7/21/2019 Bai Tap c Thuong Gap

    25/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 25/ 127

    A.Cac bien dung e xuat ra theo y muon va can oi phep nhangom : i,xuat,dem1=5,dem2=5 , p =0.

    B.Cac bien dung trong thuat toan gom :1. a, b: la hai con so c input

    2. x=a , y=tmpb=b , la cac bien gan tam thi cho hai so trene khi tnh toan co thay oi cung khong anh hng enhai so o khi chung ta can thiet s dung ti no .

    3. biendemtmp: co kieu d lieu int la bien tnh o dai so a4. bient: co kieu int dung e cha tng con sob nhan vi

    tng soa .5. biennho: e nh so hang chuc cua sotkhit> 106. bienk co kieu d lieu la double dung e nhan len 10

    moi khi bienscong

    7. biens : la bien cong don lai ket qua cua mot sobnhanvi tng soa cho en het soasau o xuat ra sos la mothang

    8. tng t nh bienkcon co bienhdung e cong don vaobienkq .

    9. bienkq : la bien ket qua cua phep nhan c tnh bangcach cong dons vao va nhanhkhi cong .

    3.BAI GIAI:

    #include#include#includevoid main(){

    clrscr();int i,nho=0,xuat,dem1=5,dem2=5,in,p=0,t;long a,b,x,y,tmpb;double s,k=1,kq=0,h=1;

    do{printf("Ban Hay Nhap Vao So a= ");scanf("%ld",&a);printf("Ban Hay Nhap Vao So b= ");scanf("%ld",&b);

  • 7/21/2019 Bai Tap c Thuong Gap

    26/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 26/ 127

    }while((a0){

    y=y/10;dem2++; // dem xem b co bao nhieu chu so + 5

    }int demtmp=dem1-5;//demtmp la bien do dai cua chu so a

    /* ---------------xuat ra theo y muon--------------------------------*/

    if(a>b){

    xuat=dem1;for(int i=1;i

  • 7/21/2019 Bai Tap c Thuong Gap

    27/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 27/ 127

    printf("%ld\n",a);for(int j=1;j

  • 7/21/2019 Bai Tap c Thuong Gap

    28/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 28/ 127

    printf(" ");printf("%.0f\n",s);//xuat ra tung dong ket qua ung voi tung con so

    kq+=s*h;//Ket qua cua phep nhan duoc cong don voi bien s

    p++; // bien p tang la de giam di so khoang trang in ra o phia duoih=h*10;// thut vao 1 don vi nen phai nhan len 10 khi cong vao kq

    xuat-=1; //giam di mot khoang trang khi xuong mot hangtmpb/=10; // lay so ke trai de nhan voi tung so a

    }

    /*--------------------------Xuat Ket Qua Cuoi Cung----------------*/

    if(a=10)//tru truong hop da in ra s roi con in kq , no se in hai lan{

    for(int m=1;m

  • 7/21/2019 Bai Tap c Thuong Gap

    29/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 29/ 127

    printf("%.0f",kq);}

    }

    getch();

    }

    HET

    BAI 13

    1. Y TNG THUAT TOAN: bai nay ta tnh tong cac so t 1 cho ti n , ta can co mot vong lap chayt 1 cho en n sau o mot bien cong don khi vong lap chay .

    2. Y NGHA MOT SO BIEN TRONG BAI :a. Trong bai ch co biennla bien in putb. Biens: la bien cong don khi vong for lap lai

    3. BAI GIAI :

    #include#includevoid main(){

    clrscr();unsigned long s=0;int n,i;printf("Nhap vao so n= ");scanf("%lu",&n);

  • 7/21/2019 Bai Tap c Thuong Gap

    30/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 30/ 127

    for(i=1;i

    1000003. BAI GIAI:

    Cach 1:

  • 7/21/2019 Bai Tap c Thuong Gap

    31/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 31/ 127

    #include#includevoid main(){

    clrscr();double s=1;

    int n,i;printf("Nhap vao so n= ");scanf("%lu",&n);for(i=1;i

  • 7/21/2019 Bai Tap c Thuong Gap

    32/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 32/ 127

    }

    printf("Ket Qua cua %d giai thua %lf x 10^%d",n,s,q);getch();

    }

    HET

    BAI 16

    1. Y TNG THUAT TOAN: bai nay ta dung cong thc phep lap Newton

    X[ 0 ] = ( 1 + a ) /2 X[1] = (1/2)*(X[n] + a/X[n]) ; n= 1 , 2 ,

    Sai so cho phep la tr tuyet oi cua( X[n+1] X[n] ) / X[n] = 10 ^ -52. Y NGHA MOT SO BIEN TRONG BAI:

    a. Trong bai coham double can_2(double x) : dung e tra ve gia tr can bac 2 cuamot so can tnh . ay c xem la bien x.Trong ham con co bienkq: c xem tng ng nh phan tX[n+1]trong cong thc trenbientemp: c xem nh phan t X[ n ] trong cong thc tren .

    3. BAI GIAI :

    #include#include#include

  • 7/21/2019 Bai Tap c Thuong Gap

    33/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 33/ 127

    double can_2(double x){

    double kq,temp,z;if(x==0)

    return(kq=0);kq=x;if(x>0){

    while(1){

    temp=kq; // tam thoi luu lai X[n]kq=(kq*kq+x)/(2*kq); // quy dong va rut gon tu phep lap Newton

    z=fabs((kq-temp)/temp);// sai so cho phepif(z

  • 7/21/2019 Bai Tap c Thuong Gap

    34/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 34/ 127

    BAI 17

    1. Y TNG THUAT TOAN:a. bai nay ta khong phai xuat cac phan t ngc tr lai ma van e la

    phai thay oi c v tr cac phan t vi nhau theo e bai la aongc ( VD : phan t au se ao thanh phan t cuoi ) .

    b. Ta nen lu y ch cho mot vong lap chay t 0 cho en na so phan tma thoi sau o hoan oi v tr cua hai phan t vi nhau .

    2. Y NGHA MOT SO BIEN TRONG BAI :Trong bai co :a. Biena[ 100]: la mang e cha cac phan t .b. Bienn: la bien input la so phan t trong mang .c. Hamdaomang(int a[100] , int n ): nhiem vu ham nay la ao v tr cua

    toan mang . trong ham co bientmpdung e bac cau khi hai bien hoanoi v tr cho nhau .

    3. BAI GIAI :

    #include

    #includevoid nhapmang(int a[100],int n){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    35/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 35/ 127

    }

    void daomang(int a[100],int n){

    int tmp;

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    36/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 36/ 127

    BAI 18

    1. Y TNG THUAT TOAN:a. Trc het ta phai viet mot ham kiem tra so nguyen to sau o viet

    ham nhap mang .b. So nguyen to la so ch chia het cho 1 va chnh no.

    2. Y NGHA MOT SO BIEN TRONG BAITrong bai gom :

    i. a[100]: mang toi a 100 phan tii. n: so phan t trong mangiii. Ham intktnt(int a[100] , int n)la ham kiem tra va tra ve gia tr

    1 neu la so nguyen to va ngc lai tra ve 0Trong ham co biendem: dung e kiem soat so lan chia hetchoI neu la 1 lan th la so nguyen to ( v I chay t 2).

    3. BAI GIAI :

    #include#include

    int ktnt(int x){

    int dem=0;for(int i=2;i

  • 7/21/2019 Bai Tap c Thuong Gap

    37/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 37/ 127

    }if(dem==1)

    return 1;else

    return 0;}

    void nhapmang(int a[100],int n){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    38/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 38/ 127

    BAI 191. Y TNG THUAT TOAN:

    bai nay theo y tng cua toi ta nen cho ho nhap vao tuy y phan t autien sau o da tren phan t o kiem soat va khong che theo e bai

    i. TH1 : Kiem tra neu pt au tien la le th khi I chan phai la sochan va I le phai la so le .

    ii. TH2 : Kiem tra neu pt au tien la chan th khi I chan phai laso le va I le phai nhap so chan .

    2. Y NGHA MOT SO BIEN TRONG BAI :

    a[100] : la mang phan t toi a la 100 k t

    n: sphn tca mng

    I: l bin chy ca mt shm for3. BAI GIAI :

    #include#include

    int kt_chan_le(int x){

    if(x%2==0)return 1;

    elsereturn 0;

    }

    void nhapmang(int a[100],int n){

    printf("Nhap a[0]"); // Nhap va xet ngay so dau tien cua mang

  • 7/21/2019 Bai Tap c Thuong Gap

    39/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 39/ 127

    scanf("%d",&a[0]);if(kt_chan_le(a[0])){

    for(int i=1;i

  • 7/21/2019 Bai Tap c Thuong Gap

    40/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 40/ 127

    }

    void main(){

    clrscr();int a[100],n;

    printf("Nhap so pt cua mang");scanf("%d",&n);nhapmang(a,n);xuat(a,n);getch();

    }

    HT

    BAI 20

    1. Y TNG THUAT TOAN:

    a. bai nay ta ch can xuat ra theo kieu hnh ma tran la cb. Ta ch nhap vao ma tran vi n dong va m cot sau o cho xuat ra ng

    vi gia tr cot ta xuat tng ng ra cac gia tr dong ( VD : ma tran 3x 3 th 00 , 01 , 11 ,30 , 31 , 32 ) Ta se xuat c ma tran chuyenv cua ma tran nhap vao .

    2. Y NGHA MOT SO BIEN TRONG BAI :a. Trong bai ch co mang hai chieua[ 50 ][50]cha toi a 50 dong va 50

    cotb. n: so dong cua ma tran

    c.

    m: so cot cua ma tran3. BAI GIAI :

    #include#includevoid nhapmang(int a[50][50],int n,int m){

    printf("Moi ban nhap mang vao day \n");for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    41/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 41/ 127

    {for(int j=0;j

  • 7/21/2019 Bai Tap c Thuong Gap

    42/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 42/ 127

    BAI 21 :

    1. Y TNG THUAT TOAN: bai nay sau khi nhap ma tran ta gan cac phan t ve mang 1 chieu sauo sap xep tang dan theo dang xoan oc bang cach gan cac phan t mang b cho ma tran a .

    2. Y NGHA MOT SO BIEN TRONG BAI:a. Trong bai bao gom cac bien toan cuc:

    i. a[50][50]: mang cha toi a 50 dong 50 cotii. b[2500]:cha toi a 2500 phan t

    iii. k :so phan t cua mang biv. n , m: so dong va so cot cua ma tran a

    b. Trong ham void ganlai_2c(): co nhiem vu gan lai mang a theo hnhxoan oc co :

    i. Bientmpcot= so cot -1 ( v ta cho I chay t 0 )ii. Bientmpdong= so dong -1 ( tng t )iii. Bienptb: ngha la phan t cua b se gan cho ma tran a va v tr

    se tang len sau khi gan ( ngha la chay len phan t ke tiep ) .iv. dem: em so lan gan e khong che viec (VD : ma tran 3 x 4 th

    ch gan 12 lan ma thoi )v. ax: la bien tang dong vao ben trong , no phu thuoc vaoxthay

    oi theoxe tang ch so cac bien i sau vao ma tran .vi. Dong for th nhat

    Gan cho dong th nhatvii. Dong for th hai :

    1. Chay ttmpdong: la bien bien cot co nhj: chay t 1 v a sap xep canh th nhat roi ,j

    tang se gan t t ma tran b vao cot bien .

  • 7/21/2019 Bai Tap c Thuong Gap

    43/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 43/ 127

    2. Sau vong for nay ta phai xet neudem= m*n th chodng tranh trng hp gan qua so phan t cua ma tranb

    viii. Dong for th 3 :

    1. Bienzc gan bang tmpcot -1 co ngha la xet phan tben trong cot bien tr ve ( tranh trng hp xet phant cot va gan xong ) .

    ix. Dong for th 4 :1. bientc gan bang tmpdong 1 ,tgiam en khi nao

    >ax . V bo i phan t nam tren cung cot nhng dongtren cua no .

    3. BAI GIAI :#include#includeint a[50][50],n,m,b[100],k=0; //Khoi tao mang toan cuc/*---------------Nhap Mang Ban Dau------------------------*/void nhapmang(){

    printf("Ban Hay Nhap so dong va so cot cua ma tran ");

    scanf("%d%d",&n,&m);for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    44/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 44/ 127

    printf("\n");}

    }/* -----------Gan Sang Mang 1 chieu va sap xep tang dan ---------*/

    void gan1c(){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    45/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 45/ 127

    }for(int j=ax+1;j=ax;z--) // gan vao bien 3 hang canh thu 3{

    a[tmpdong][z]=b[ptb++];dem++;

    }for(int t=tmpdong-1;t>ax;t--) // gan vao bien 4 hang canh thu 4{

    a[t][ax]=b[ptb++];dem++;

    }x++;tmpcot--; //giam vi tri tung bien de thanh soan octmpdong--;

    }}

    void xuata(){

    textcolor(-4);cprintf("Mang sau khi sap xep la :\n");printf("\n\n");for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    46/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 46/ 127

    void main(){

    clrscr();nhapmang();

    xuat();gan1c();sapxep();ganlai_2c();xuata();getch();

    }HET

    BAI 221. Y TNG THUAT TOAN:

    a. bai nay ta xet tng phan t mot sau o em so sanh vi cac phan ttrong mang

    b. e thc hien bai toan tren ta can co hai vong lapi. Vong lap 1 chay t phan t au tien cho en phan t ke cuoi

    ii. Vong lap 2 chay t phan t sau v tr cua phan t vong lap th1 sau o so sanh .

    2. Y NGHA MOT SO BIEN TRONG BAI :

    a. a[100]: mang 1 chieu toi a la 100 phan tb. n: so phan t trong mang.

    3. BAI GIAI :

    #include#include

    void nhapmang(int a[100],int n){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    47/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 47/ 127

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    48/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 48/ 127

    BAI 23 :1. Y TNG THUAT TOAN:

    a. Trc het viet ham tm so nguyen to .

    b. Cho vong lap e xac nh c so nguyen to au tien va gan cho no laln nhat .

    c. Sau o tao mot vong lap quet het cac phan t va kiem tra neu thoai. Ln hn so nguyen to c xac nh luc au va

    ii. La so nguyen tod. Ta se tm c so nguyen to ln nhat .

    2. Y NGHA MOT SO BIEN TRONG BAI :a. bai nay ch co ham int ktnt(int x ): trong oxla oi so can kiem tra

    ila bien chay ,dem: la em so lan chia het choib. Ham void search(int a[100] , int n ), trong o :i. max: la bien dung e gan gia tr la so nguyen to ln nhat

    ii. vt: la tm v tr cua so nguyen to ln nhatc. Ham main() co :

    i. a[100]: mang toi a co 100 phan tii. n: so phan t trong mang

    3. BAI GIAI:

    #include

    #include

    void nhapmang(int a[100],int n){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    49/127

  • 7/21/2019 Bai Tap c Thuong Gap

    50/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 50/ 127

    void main(){

    clrscr();int a[100],n;printf(" Nhap so phan tu cua mang ");scanf("%d",&n);nhapmang(a,n);xuatmang(a,n);search(a,n);getch();

    }

    BAI 24

  • 7/21/2019 Bai Tap c Thuong Gap

    51/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 51/ 127

    1. Y TNG THUAT TOAN :a. Phai co mot ham tnh tong cac phan t tren mot hang va co mot ham

    hoan oi v tr cac phan t hai hang vi nhau .

    b. Sau o viet mot ham co vong lap kiem tra va hoan oi ong thi vietmot ham sap xep cac phan t tang dan tren tng hang .2. Y NGHA MOT SO BIEN TRONG BAI:

    a. bai nay th co cac ham :i. Ham int tong_hang(int a[50][50] , int m ,int k) : ham nay co

    nhiem vu tra ve con so co gia tr la tong cua hangktruyen vao.trong ham co bient: lam nhiem vu cong don ,z: la bien chayvong lap

    ii. Ham void swap_hang(int a[50][50] , int m ,int x ,int y ) : lamnhiem vu hoan oi cac phan t gia hai hangxvay.

    iii. Ham void sapxep( int a[50][50] , int n ,int m): lam nhiem vu sapxep theo e bai . Trong ham co cac bien :

    1. k: la bien gii han hang xet ch chay ti dong ke cuoima thoi

    2. z: la bien ng vi mot gia tr cua kthzse quet tk+1cho en dong cuoi cung

    3. ong thi trong ham con co sap xep cac phan t tangdan theo tng hang co 3 dong for

    a. Vong for th nhat : gii han xet hang

    b. Vong for th hai : lay tng phan t i so sanhc. Vong for th ba : se chay cac phan t tiep theong t gia tr phan t cua Vong for th haimaquet cho en het so phan t tren hang o roisap xep .

    iv. ham main() : co cac bien a[50][50]: mang toi a 50 hang va50 cot, n: so hang cua mang ,m: so cot cua mang .

    3. BAI GIAI:

    #include#include

    /*----------------Nhap Mang & Xuat Mang -----------------*/

    void nhapmang(int a[50][50],int n,int m){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    52/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 52/ 127

    for(int j=0;j

  • 7/21/2019 Bai Tap c Thuong Gap

    53/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 53/ 127

    }// Sap xep tung hang tang dan

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    54/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 54/ 127

    a. Ta phai xac nh ma tran tch thu c la co so dong la so dong cuama tran 1 va so cot la so cot cua ma tran 2 .

    b. T o xac nh c gia tr gii han cua vong lap roi nhan theophng phap nhan 2 ma tran .

    c. Lu y Phai co ca hai ieu kien sau mi tnh tch ci. so cot cua ma tran 1 bang so dong cua ma tran 2

    2. Y NGHA MOT SO BIEN TRONG BAI :a. Trong bai co ham :

    i. Void xuatmatran3(int kq[10][10] ,int a[10][10] , int b[10][10] ,intn ,int m , int c): lam nhiem vu nhan va xuat ma tran ket qua .

    ii. Trong ham co 3 dong for :1. Vong for th nhat : Chay tren tng dong cua ma tran 12. Vong for th hai : Chay tren tng cot cua ma tran 23. Vong for th ba : ng vi tng gia tr cua Vong for th

    nhat va vong for th hai no quet tren tng phan t .4. sau khi tnh in ra phan t o luon .

    b. hammain()gom :i. a[10][10]: ma tran toi a 10 hang 10 cot

    ii. n, m: la so dong va so cot cua ma tran aiii. b[10][10]: ma tran toi a 10 hang 10 cotiv. d, c: la so dong va so cot cua ma tran bv. kq[10][10]: la ma tran ket qua co toi a la 10 dong va 10 cot

    3. BAI GIAI :

    #include#include

    void nhapmatran1(int a[10][10],int n,int m){

    int i,j;for(i=1;i

  • 7/21/2019 Bai Tap c Thuong Gap

    55/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 55/ 127

    void nhapmatran2(int b[10][10] ,int d,int c){

    int i,j;for(i=1;i

  • 7/21/2019 Bai Tap c Thuong Gap

    56/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 56/ 127

    nhapmatran1(a,n,m);printf("Nhap vao so Dong Va Cot cua ma tran 2 ");scanf("%d%d",&d,&c);nhapmatran2(b,d,c);

    if((n==c)&&(m==d))xuatmatran3(kq,a,b,n,m,c);

    elseprintf("Hai ma tran nay khong nhan voi nhau duoc ");

    getch();}

    HET

    BAI 26

    1. Y TNG THUAT TOAN:Tng t bai so nguyen to ln nhat bai 23 . Nhng bai nay ta can tmra so am au tien sau o t v tr so am o quet cho en het mang va tmra so am ln nhat .

    2. Y NGHA MOT SO BIEN TRONG BAI:

  • 7/21/2019 Bai Tap c Thuong Gap

    57/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 57/ 127

    a. Trong bai co ham void search_am(int a[100] ,int n ): lam nhiem vu tmva in ra so am ln nhat trong mang . Trong o co cac bien :

    i. max: la cha so am ln nhat bienmaxthay oi theo gia tr cuaso am tren mang .

    ii. vt: la bien cha v tr cua phan t hien ang la so am ln nhatb. Hammain()co :

    i. a[100]: mang 1 chieu toi a 100 phan t .ii. n: so phan t trong mang.

    3. BAI GIAI :

    #include#include

    void nhapmang(int a[100],int n){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    58/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 58/ 127

    vt=j+1;}

    }printf(" \n So Am lon nhat trong mang la %d tai phan tu so %d" , max,vt);}

    }

    void main(){

    clrscr();int a[100],n;

    printf(" Nhap so phan tu cua mang ");scanf("%d",&n);nhapmang(a,n);xuatmang(a,n);search_am(a,n);getch();

    }

    HT

    BAI 27

    1. Y TNG THUAT TOAN: bai nay ta can em so phan t cua mot mang con tang bang cach vaxet va em sau o lu lai v tr cua phan t bat au xet va lu lai v trcua phan t ket thuc mang con tang . e thc hien c nh vay ta canco mot bien lu lai so phan t cua mang con tang sau o neu co mang

  • 7/21/2019 Bai Tap c Thuong Gap

    59/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 59/ 127

    con tang nao dai hn na th lu lai nhng thong tin cua mang nh a noi tren .

    2. Y NGHA MOT SO BIEN TRONG BAI:

    a. Trong ham void xuatmang_tang(int a[100] , int n )gom co :i. Bien vitri_1: la bien e lu lai v tr cua phan t au tien trong

    mang con tang dai nhat .ii. Bien vitri_2: la bien e lu lai v tr cuoi cung cua mang con

    tang dai nhat .iii. Biens: la bien e lu lai v tr c tnh t phan t au tien

    a[0]en phan t ket thuc cua mang con tang dai nhativ. Bient: la bien em so phan t trong mang con tang .

    b. Trong ham main() co :i. a[100] : mang toi a la 100 phan t

    ii. n : la so phan t trong mang3. BAI GIAI :

    #include#include/*-----------------------HAM NHAP MANG --------------------------*/

    void nhapmang(int a[100],int n){

    int i;printf("Ban hay Nhap Mang vao :\n");for(i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    60/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 60/ 127

    }

    void xuatmang_tang(int a[100],int n){

    int vitri_1,vitri_2=0,t,s;for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    61/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 61/ 127

    xuatmang_tang(a,n);

    getch();}

    HET

    BAI 28

    1. Y TNG THUAT TOAN:a. Ta cung can co mot ham kiem tra nguyen to tng t nh cac bai

    trc e xet tng phan t . Neu tai o la so nguyen to th ta phai thchien ham di mang i mot k t .

    b. Sau khi di ta gan tai v tr pha sau phan t o la 5c. Lu y cho vong lap cong them 2 hi a gan

    2. Y NGHA MOT SO BIEN TRONG BAI :

  • 7/21/2019 Bai Tap c Thuong Gap

    62/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 62/ 127

    a. Trong bai co ham void insert(int a[100] , int &n ) dung e chen themphan t la 5 vao sau phan t la so nguyen to .

    b. Trong ham main() co :i. a[100] : la mang toi a co 100 phan t

    ii. n: so phan t cua mang3. BAI GIAI:

    #include#include

    void nhapmang(int a[100],int n){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    63/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 63/ 127

    }

    void insert(int a[100],int &n){

    int i=0;while(ii+1;j--)a[j]=a[j-1];

    a[i+1]=5;n+=1;

    i+=2;}else

    i++;}

    }

    void main(){

    clrscr();int a[100],n;printf(" Nhap so phan tu cua mang ");scanf("%d",&n);nhapmang(a,n);xuatmang(a,n);insert(a,n);

  • 7/21/2019 Bai Tap c Thuong Gap

    64/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 64/ 127

    printf("\n Mang sau khi chen voi dieu kien de bai la \n");xuatmang(a,n);getch();

    }

    HET

    BAI 29

    1. Y TNG THUAT TOAN:a. bai nay ta ch can em so lan xuat hien cua so au tien la bao nhieu

    lan sau o gan gia s cho no la ln nhat ,roi quet tren mang neu gapphan t nao xuat hien nhieu hn th ta gan cho no la ln nhat .b. Trc het ta can co mot ham em phan t , sau o la viet mot ham

    em kiem soat , neu gap phan t giong phan t a em roi th khongem na ngc lai th em va gan gia s la ln nhat nh a noi tren

    2. Y NGHA MOT SO BIEN TRONG BAI :

  • 7/21/2019 Bai Tap c Thuong Gap

    65/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 65/ 127

    a. Trong bai co ham int dempt( int x , int a[100] , int n ,int i ): lam nhiemvu la em so lan xuat hien cua phan t o t no tr i . v cac sotrc no a xet va em nen khong can em lai .

    b. Ham void max_xuat( int a[100] , int n ): lam nhiem vu xet va tm ra

    phan t xuat hien nhieu nhat , trong ham co cac bien :i. max: e cha so lan xuat hien cua phan t

    ii. pt : la e lu lai gia tr cua phan t xuat hien nhieu nhat .iii. Vong lap for th nhat : quet tat ca cac phan t t phan t au

    tien cho en phan t cuoi cung .iv. Vong for th hai : ng moi gia tr cua phan t tai v tr ith ta

    xet phan t o co giong mot phan t nao pha truc o haykhong neu giong th khong em na thoat khoi vong lap tanggia tr ilen ngc lai th em .

    c. Hammain()gom cac bien :i. a[100] : mang phan t toi a 100 k t

    ii. n: so phan t trong mang .3. BAI GIAI

    #include#include

    void nhapmang(int a[100],int n){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    66/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 66/ 127

    if(x%i==0)dem++;

    }if(dem==2)

    return 1; // dung tra ve 1else

    return 0; // sai tra ve 0}

    void xuatmang(int a[100],int n){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    67/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 67/ 127

    BAI 30

    1. Y TNG THUAT TOAN:a. bai nay cung tng t nh nhng bai tren ta cung can co mot ham

    kiem tra so o co phai la so nguyen to hay khong .b. Neu phai th tai v tr o di mang tr ve mot phan t .

    2. Y NGHA MOT SO BIEN TRONG BAI :a. Ham kiem tra so nguyen to tng t nh li giai thch cua nhng bai

    trenb. Ham void xoa_ngto( int a[100] , int &n ) : lam nhiem vu xoa cac so

    nguyen to co trong mangc. Ham main() gom cac bien :

    i. a[100]: mang toi a co 100 phan tii. n: so phan t cua mang

  • 7/21/2019 Bai Tap c Thuong Gap

    68/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 68/ 127

    3. BAI GIAI :

    #include#include

    void nhapmang(int a[100],int n){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    69/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 69/ 127

    }

    void main()

    {clrscr();int a[100],n;printf(" Nhap so phan tu cua mang ");scanf("%d",&n);nhapmang(a,n);xuatmang(a,n);xoa_ngto(a,n);printf("\n Mang sau khi xoa voi dieu kien de bai la \n");xuatmang(a,n);getch();

    }

    HT

    BAI 311. Y TNG THUAT TOAN :

    bai nay ta ch can viet ham sap xep cac so dng bang cach co haivong lap

    i. Vong lap th nhat : lam nhiem vu quet cac phan t t phan tau tien cho en phan t ke cuoi

    ii. Vong lap th hai : ng vi cac gia tr phan t cua vong lap thnhat vong lap th hai quet en het mang sau o lam nhiem vuhoan oi neu thoa ieu kien.

    2. Y NGHA MOT SO BIEN TRONG BAI :a. Trong bai co :

    i. a[100]: mang toi a 100 phan tii. n: so phan t trong mang

    3. BAI GIAI :

  • 7/21/2019 Bai Tap c Thuong Gap

    70/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 70/ 127

    #include#include

    void nhapmang(int a[100],int n){

    for(int i=0;i=0)){

    tmp=a[i];a[i]=a[j];a[j]=tmp;

    }}else

    break;}

    }}

    void xuatmang(int a[100],int n){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    71/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 71/ 127

    HET

    BAI 32

    1. Y TNG THUAT TOAN :

    a. bai nay ta nen u tien lay phan t gan vi x ma ng trc xb. Ta phai co mot ham lam nhiem vu tm phan t gan vi x nhat.

    2. Y NGHA MOT SO BIEN TRONG BAI:a. ham void search_pt(int a[50][50] , int n ,int m , int x )gom co :

    i. min : la bien cha hieu cua soxva phan ta[0][0].ii. y: la bien cha hieu giaxvaa[i][j].

    iii. pt: la bien cha gia tr cua phan t gan vix nhat .b. hammain():

    i. a[50][50]: mang co toi a 50 dong 50 cot

    ii. n , m: la so dong va so cotiii. x : la bien c input.3. BAI GIAI :

    #include#include#include

  • 7/21/2019 Bai Tap c Thuong Gap

    72/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 72/ 127

    /*----------------Nhap Mang & Xuat Mang -----------------*/

    void nhapmang(int a[50][50],int n,int m){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    73/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 73/ 127

    int a[50][50],n,m,x;printf("Nhap vao so dong ");scanf("%d",&n);printf("Nhap vao so cot ");scanf("%d",&m);printf("Nhap vao pt x ");

    scanf("%d",&x);nhapmang(a,n,m);xuatmang(a,n,m);search_pt(a,n,m,x);getch();

    }

    HT

    BAI 33 :

    1. Y TNG THUAT TOAN:a. bai nay ta ch can ve mot ma tran vuong cap 4 chang han sau o

    quan sat cac bien chay thay oi roi tm ra quy luat cua no .b. V du muon tnh tong cac phan t tren ng cheo chnh chang han

    trong ma tran cap 4 th cac phan t cac v tr nh sau ( 00 ,11 , 22 ,

    33 ) th ta cho vong lap chay t 0 cho en n-1 sau o khai bao motbien cong don lai cac phan t a[i][i] khi vong lap chay.

    2. Y NGHA MOT SO BIEN TRONG BAI:Trong bai ch co mang a[50][50] : toi a 50 dong 50 cot , n : la cap matran

    3. BAI GIAI:

    #include#include

    /*----------------Nhap Mang & Xuat Mang -----------------*/

    void nhapmang(int a[50][50],int n){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    74/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 74/ 127

    }}

    void xuatmang(int a[50][50],int n){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    75/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 75/ 127

    }printf("Tong Tam Giac duoi duong cheo chinh khong ke dcheo la %d\n",sum);

    }

    void tongtg_duoi1(int a[50][50],int n)

    {int sum=0;for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    76/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 76/ 127

    }printf("Tong Tam Giac duoi duong cheo phu khong ke ca dcheo la %d\n",sum);

    }

    void tongtg_duoip1(int a[50][50],int n){

    int sum=0;for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    77/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 77/ 127

    BAI 34

    1. Y TNG THUAT TOAN:a. Trc het ta phai xac nh chuyen mang sang may dong may cot .b. Sau o mi gan t mang 1 chieu sang mang 2 chieu.

    2. Y NGHA MOT SO BIEN TRONG BAI :Trong bai ch co cac bien :

    i. a[100]: mang 1 chieu co 100 phan tii. c[100][100]: mang 2 chieu co toi a la 100 dong va 100 cot

    iii. x: la so phan t tren mang 1 chieu

    iv. n , m: la cac bien input chnh la so dong va so cot cua ma tran3. BAI GIAI :

    #include#includevoid nhap(int a[100],int n){ for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    78/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 78/ 127

    }

    void doimang2(int c[100][100],int a[100],int n,int m){

    int k=0;

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    79/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 79/ 127

    BAI 35

    1. Y TNG THUAT TOAN:Trong bai nay trc het ta kiem tra tren tng hang cua ma tran coi coso 0 hay khong :

    i. Co so 0 be khoi vong for xet tiep cac ieu kien e gan dnhien la khong thoa .

    ii. Neu dong o khong co so 0 th gan cho ma tran b2. Y NGHA MOT SO BIEN TRONG BAI :

    Trong bai co ham :i. Voidtao_mtb( int a[50][50] ,int b[50][50] , int &l , int n ,int m , int

    &flag ): lam nhiem vu tao ra ma tran b trong ham co :1. p: la bien chay dong cua ma tran b .2. vong for th nhat chay tren dong cua ma trana.3. vong for th hai ng vi vong for th nhat e chay tren

    tng cot cua ma trana4. Neu vong for th hai chay en het ( ngha la khong co

    so 0 tren dong hien tai ) th vong for th ba se gan madong hien tai vao ma tranb.

    ii. hammain()co :1. a[50][50]: la mang co toi a la 50 dong va 50 cot .

    2. n,m : la so dong va so cot cua ma tran a .3. l: la so dong cua ma tran b4. flag: la bien la c e biet b co nhan c gia tr nao hay

    khong neu khong th khong xuat ra ma tran b .3. BAI GIAI

  • 7/21/2019 Bai Tap c Thuong Gap

    80/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 80/ 127

    #include#include#include

    /*----------------Nhap Mang & Xuat Mang -----------------*/

    void nhapmang_a(int a[50][50],int n,int m){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    81/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 81/ 127

    if(a[i][j]==0)// co thi dong ma tran b giam 1 va thoat{

    l-=1;break;

    } //Neu khong co j tang den m va thoat xuong cau if xet va}

    if(j==m) //Neu thoa thi gan cho b{

    flag=1;for(int k=0;k

  • 7/21/2019 Bai Tap c Thuong Gap

    82/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 82/ 127

    BAI 36

    1. Y TNG THUAT TOAN:a. bai nay ta xet mot phan t roi so sanh het cac phan t trong mang

    sau o oi cho , van e cho la ban phai xet phan t nh the nao vaquet theo tuan t nao .

    b. Bai nay ta thc hien bang cach tao ra hai vong lap long nhau sau oquet t phan t o cho het mang nhng quet theo tng cot . Nhnglu y la v du nh mot ma tran 3 x 4 th gia s nh hai vong lap trenxet ti phan t 03 th ta phai so sanh vi phan t th 01 tr i ( 11 , 21, 31 .. 02 , 12 , 22,32 .) .

    2. Y NGHA MOT SO BIEN TRONG BAI:Trong bai co ham void sapxep(int a[50][50] , int n , int m )gom co cac biennh sau :

    i. t: la bien nh v tr dong e xet en v tr ke tiepii. p : la bien chay quet tren tng cot ma ng mot gia tr p sechay vong lap for kcho en khi k= n-1 hoan oi neu thoa vaxet tiep .

    3. BAI GIAI :

    #include#include#include

    /*----------------Nhap Mang & Xuat Mang -----------------*/

    void nhapmang(int a[50][50],int n,int m){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    83/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 83/ 127

    }void xuatmang(int a[50][50],int n,int m){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    84/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 84/ 127

    printf("Nhap vao so cot ");scanf("%d",&m);nhapmang(a,n,m);xuatmang(a,n,m);sapxep(a,n,m);printf("\n\n Ma Tran sau khi sap xep la \n\n");

    xuatmang(a,n,m);getch();

    }

    HT

  • 7/21/2019 Bai Tap c Thuong Gap

    85/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 85/ 127

    BAI 37

    1. Y TNG THUAT TOAN: bai nay e viet cac ham :

    i. Xoa au chuoi : trc het ta phai xac nh la co khoang tranghay khong va neu co th co may khoang trang e ta di mangk t ve vi so lan di bang so khoang trang . Sau o gan tai vtr n-1 so khoang trang la k t \0 .

    ii. Xoa gia chuoi : Neu gap hai khoang trang lien nhau th ta xoai mot khoang trang bang cach la di tai v tr khoang trango ve 1 k t .

    iii. Xoa cuoi chuoi :Nu gp k ttrng cui chui th ta di k t \ 0 v1 k t.

    2.

    Y NGHA MOT SO BIEN TRONG BAI :N: la o dai cua chuoi3. BAI GIAI :

    #include#include#includevoid nhap(char *str){

    gets(str);

    }void xuat(char *str){

    puts(str);}void xoadauchuoi(char *&str,int &n){

    int i=0,dem=0;if(str[0]==' '){

    while(str[i]==' '){

    dem++;i++;

    }for(int j=dem;j

  • 7/21/2019 Bai Tap c Thuong Gap

    86/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 86/ 127

    {str[j-dem]=str[j];

    }str[j-dem]='\0';

    n-=dem;

    }else

    return;}void xoagiuachuoi(char *&str,int &n ){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    87/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 87/ 127

    clrscr();char str[32768];printf("Nhap chuoi ki tu ban dau \n " );nhap(str);

    int n=strlen(str);printf("Chuoi ban dau co %d ki tu \n\n ",n);xoadauchuoi(str,n);xoagiuachuoi(str,n);xoacuoichuoi(str,n);printf("Chuoi sau khi thay doi la \n\n ");xuat(str);printf("Con lai %d ki tu " ,n);getch();

    }

    HET

    Bai 38 :

    1. Y TNG THUAT TOAN:

  • 7/21/2019 Bai Tap c Thuong Gap

    88/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 88/ 127

    bai nay trc het ta phai xet xem chuoi s1 co dai hn chuoi s2 khong .sau o khai bao mot chuoi tam e cat mot chuoi bang o dai cua chuoi s2em so sanh vi chuoi s2 .Neu bang th em tang len 1 ngc lai xet tphan t tiep theo lai cat mot chuoi nh vay cho en het chuoi s1.

    2. Y NGHA MOT SO BIEN TRONG BAI :a. s1[100],s2[100], tmp[100]: lan lt la chuoi s1 ,s2 va chuoi tam.b. m: la o dai cua chuoi s1 .c. n: la o dai cua chuoi s2 .d. trong ham ganchuoi co cac bien :

    i. x: la bien chay cac phan t cua chuoi tmp .ii. i: la bien chuyen dch chuoi len 1 k t .

    iii. k: la bien lap chay va u o dai cua chuois2e em so sanh .iv. p: la bien tra ve 0 neus2vatmpbang nhau .

    3. BAI GIAI:

    #include#include#include

    void nhapchuoi1(char *s1){

    printf("Nhap Vao Chuoi ki tu thu nhat :\n");gets(s1);

    }

    void nhapchuoi2(char *s2){

    printf("Nhap Vao Chuoi ki tu thu hai :\n ");gets(s2);

    }

    void demchuoi(char *s1,char *s2,char *tmp,int n,int m,int &dem){

    int x=0,i=0,p;while(i

  • 7/21/2019 Bai Tap c Thuong Gap

    89/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 89/ 127

    }tmp[x]='\0'; //gan ki tu het chuoi cho chuoi tmp de so sanh voi s2

    p=strcmp(s2,tmp);

    if(p==0)dem++;

    if((n==m)||(m-i=n){

    demchuoi(s1,s2,tmp,n,m,dem);if(dem==0)printf("Khong co chuoi s2 trong s1 ");else

    printf("So lan xuat hien cua chuoi s2 trong s1 la %d lan " ,dem);}else

    printf("\nKhong co Chuoi s2 trong s1 ");getch();

    }

    Bai 39 :1. Y TNG THUAT TOAN:

  • 7/21/2019 Bai Tap c Thuong Gap

    90/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 90/ 127

    bai nay ta ch can nam ro bang ma ASCII la c . Cac k t hoaco gia tr t 65 96 . Lu y Neu gap k t la khoang trang th khongbien oi .

    2. Y NGHA MOT SO BIEN TRONG BAI :

    3. BAI GIAI :

    #include#include#include//---------------------HAM NHAP CHUOI ---------------------------------------void nhap(char *str){

    printf("Ban hay nhap vao chuoi chu hoa :\n");gets(str);

    }//---------------------HAM XUAT CHUOI-------------------------------------------void xuat(char *str){

    textcolor(5);cputs(str);

    }//--------------------HAM DOI THANH CHUOI THUONG -------------------------------------

    void change(char *str){int n=strlen(str);for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    91/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 91/ 127

    printf("Mang luc dau nhap la : \n");xuat(str);change(str);printf("\n");

    printf("Mang sau khi chuyen doi la :\n");xuat(str);getch();

    }

    HET

    Bai 40#include#include#include//---------------------HAM NHAP CHUOI ---------------------------------------

  • 7/21/2019 Bai Tap c Thuong Gap

    92/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 92/ 127

    void nhap(char *str){

    printf("Nhap vao chuoi ki tu : \n");gets(str);

    }//---------------------HAM XUAT CHUOI-------------------------------------------void xuat(char *str){

    textcolor(2);cputs(str);

    }//--------------------HAM DOI THANH CHUOI HOA-------------------------------------void doithanhhoa(char *str){

    int n=strlen(str);for(int i=0;i96)&&(str[i]

  • 7/21/2019 Bai Tap c Thuong Gap

    93/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 93/ 127

    nhap(str);printf("Chuoi ki tu luc dau la : \n");xuat(str);doithanhhoa(str);

    printf("\nChuoi ki tu luc sau la : \n");xuat(str);getch();

    }

    HET

    Bai 41//DEM SO TU CUA CHUOI

    #include#include#include//---------------------NHAP CHUOI -------------------------------------------void nhap(char *str)

  • 7/21/2019 Bai Tap c Thuong Gap

    94/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 94/ 127

    {gets(str);

    }//--------------------XUAT CHUOI----------------------------------------------

    void xuat(char *str){

    puts(str);}//---------------------DEM SO TU TRONG CHUOI ----------------------------------int dem(char *str){

    int dem;if (str[0]==' ')

    dem=0;else

    dem=1;for (int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    95/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 95/ 127

    HET

  • 7/21/2019 Bai Tap c Thuong Gap

    96/127

  • 7/21/2019 Bai Tap c Thuong Gap

    97/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 97/ 127

    }void nhan (sophuc a,sophuc b){

    sophuc c;

    c.thuc=a.thuc*b.thuc+a.ao*b.ao*(-1);c.ao=a.thuc*b.ao+a.ao*b.thuc;printf("\nTich cua hai so phuc %.2f",c.thuc);if(c.ao

  • 7/21/2019 Bai Tap c Thuong Gap

    98/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 98/ 127

    printf("\n");nhap(b);cong(a,b);printf("\n");

    tru(a,b);printf("\n");nhan (a,b);printf("\n");if((b.ao!=0)||(b.thuc!=0))

    chia(a,b);else{

    textcolor(-9);printf("\n\n");cprintf("Khong thuc hien phep chia duoc ");

    }getch();

    }

    HET

    Bai 43#include#include#include

  • 7/21/2019 Bai Tap c Thuong Gap

    99/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 99/ 127

    //-------------------KHAI BAO PHAN SO----------------------------------------struct phanso{

    int tu;

    int mau;};//-------------------NHAP PHAN TU--------------------------------------------void nhap(phanso &n){

    printf("ban hay nhap vao tu so");scanf("%d",&n.tu);printf ("ban hay nhap vao mau so");scanf("%d",&n.mau);

    }int ucln(int a,int b){

    while((a!=0)&&(b!=0)){

    if(a>=b)a-=b;

    elseb-=a;

    }

    if(a==0)return b;

    elsereturn a;

    }

    //-------------------CONG HAI PHAN SO----------------------------------------phanso cong(phanso a, phanso b){

    phanso c;int x;if(a.mau!=0&& b.mau!=0)

  • 7/21/2019 Bai Tap c Thuong Gap

    100/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 100/ 127

    {c.tu=a.tu*b.mau+a.mau*b.tu;c.mau=a.mau*b.mau;x=ucln(c.tu,c.mau);

    c.tu/=x;c.mau/=x;return c;

    }else

    exit(1);}

    //---------------------NHAN HAI PHAN SO---------------------------------------\phanso nhan(phanso a,phanso b){phanso c;int x;

    if(a.mau!=0&&b.mau!=0){

    c.tu=a.tu*b.tu;c.mau=a.mau*b.mau;x=ucln(c.tu,c.mau);

    c.tu/=x;c.mau/=x;return c;

    }else

    exit(1);}

    //----------------------CHIA HAI PHAN SO---------------------------------------phanso chia(phanso a,phanso b)

  • 7/21/2019 Bai Tap c Thuong Gap

    101/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 101/ 127

    {phanso c;int x;

    if(a.mau!=0&&b.mau!=0&&b.tu!=0)

    {c.tu=a.tu*b.mau;c.mau=a.mau*b.tu;x=ucln(c.tu,c.mau);c.tu/=x;c.mau/=x;return c;

    }else

    exit(1);}//----------------------TRU HAI PHAN SO----------------------------------------phanso tru(phanso a,phanso b){

    phanso c;int x;if(a.mau!=0&&b.mau!=0){

    c.tu=a.tu*b.mau-b.tu*a.mau;

    c.mau=a.mau*b.mau;x=ucln(c.tu,c.mau);c.tu/=x;c.mau/=x;return c;

    }else

    exit(1);}//----------------------CHUONG TRINH CHINH------------------------------------

    void main (){

    clrscr();phanso a;phanso b;

  • 7/21/2019 Bai Tap c Thuong Gap

    102/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 102/ 127

    textcolor(6-9);cprintf("ban hay nhap vao phan so a");

    printf("\n");nhap(a);

    cprintf ("ban hay nhap vao phan so b");printf("\n");nhap(b);

    printf("tong hai phan so la %d/%d",cong(a,b));printf("\n");

    printf("hieu cua hai phan so %d/%d",tru(a,b));printf("\n");

    printf("tich cua hai phan so %d/%d",nhan(a,b));printf("\n");

    printf("thuong cua hai phan so %d/%d",chia(a,b));getch();

    }

    HET

    Bai 44 :#include#include#include

    struct sinhvien{

    int mssv,phai;char hoten[30];float dtb;

  • 7/21/2019 Bai Tap c Thuong Gap

    103/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 103/ 127

    };

    void nhap(sinhvien sv[30],int n){

    float tmp;for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    104/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 104/ 127

    sv[j]=tmp;}

    }

    }}

    void xuat(sinhvien sv[30],int n){

    printf("\n\nMaSo\t");printf("Ho Ten \t\t\t");printf("Phai \t");printf("Diem TB\n\n");for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    105/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 105/ 127

    HET

    Bai 45 :#include#include#include

    struct sinhvien{

    int mssv,phai;char hoten[30];float dtb;

    };

    void nhap(sinhvien sv[30],int n)

  • 7/21/2019 Bai Tap c Thuong Gap

    106/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 106/ 127

    {float tmp;for(int i=0;ivt;i--){

    sv[i]=sv[i-1];}n+=1;printf("\n Nhap vao thong tin cua sinh vien can chen ");

    printf("\nMa so sinh vien ");scanf("%d",&sv[vt].mssv);printf("Ho Ten Sinh vien ");fflush(stdin);gets(sv[vt].hoten);printf("Phai ");

  • 7/21/2019 Bai Tap c Thuong Gap

    107/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 107/ 127

    scanf("%d",&sv[vt].phai);printf("Diem Trung Binh ");scanf("%f",&tmp);sv[vt].dtb=tmp;

    }

    void timsv_ms(sinhvien sv[30] , int maso , int n){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    108/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 108/ 127

    int z=strlen(sv[i].hoten);for(int j=z;j

  • 7/21/2019 Bai Tap c Thuong Gap

    109/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 109/ 127

    break;}while((flag!='1')||(flag!='2'));

    xuat(sv,n);getch();

    }

    Bai 46 :#include#include

    void docfile(char x[30],unsigned long &dodai){

    char ch; // Bien dem ki tuFILE *fp;fp=fopen(x,"r");if(fp==NULL)

    ("Khong The Mo Tap Tin ");else{

    while((ch=getc(fp))!=EOF) //neu gap ki tu cuoi file thi ket thuc{putc(ch,stdout); //doc tung ki tu roi xuat ra man hinh

    dodai++;

    }

  • 7/21/2019 Bai Tap c Thuong Gap

    110/127

  • 7/21/2019 Bai Tap c Thuong Gap

    111/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 111/ 127

    };

    /*----------------------HAM nhap nhan vien ------------------------*/

    void nhap(nhanvien nv[30],int n){

    float tmp;for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    112/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 112/ 127

    /*--------------------HAM luu len file ----------------------*/

    void savefile(nhanvien nv[50],int n,char x[30]){

    float tmp;float max_luong(nhanvien nv[50],int n); //khai bao cac prototype cho

    hamfloat min_luong(nhanvien nv[50],int n);float average_luong(nhanvien nv[50],int n);FILE *fp;fp=fopen(x,"wt");

    // xuat ra cac de muc khi ghi len file

    fprintf(fp," MSNV\t");fprintf(fp," Ho Ten\t\t\t");fprintf(fp," Phai \t");fprintf(fp," Ngay sinh \t\t");fprintf(fp," Dia chi \t\t");fprintf(fp," Dien thoai \t");fprintf(fp," Ngay lam viec \t");fprintf(fp," Luong \n\n");

    // ghi lan luot tung nhan vien

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    113/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 113/ 127

    z=strlen(nv[i].diachi);

    for(int k=z;k

  • 7/21/2019 Bai Tap c Thuong Gap

    114/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 114/ 127

    printf("%d/%d/%lu\t",nv[i].birthday.ngay,nv[i].birthday.thang,nv[i].birthday.nam);

    puts(nv[i].diachi);

    z=strlen(nv[i].diachi);for(int k=z;k

  • 7/21/2019 Bai Tap c Thuong Gap

    115/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 115/ 127

    printf("So Dien Thoai lien lac :");fflush(stdin);gets(nv[stt-1].phone);printf("Ngay bat dau lam bao gom ngay thang nam ");

    scanf("%d",&nv[stt-1].ngaybd.ngay);scanf("%d",&nv[stt-1].ngaybd.thang);scanf("%lu",&nv[stt-1].ngaybd.nam);printf("Nhap vao tien luong ");scanf("%f",&tmp);nv[stt-1].luong=tmp;

    }

    /*---------------Tim luong thap nhat -----------------------------*/

    float min_luong(nhanvien nv[50],int n){

    float min=nv[0].luong;for(int i=1;i

  • 7/21/2019 Bai Tap c Thuong Gap

    116/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 116/ 127

    /*---------------In ra danh sach nhan vien cua cong ty---------------*/void In_danhsach(nhanvien nv[50],int n){

    printf("\n\nDANH SACH NHAN VIEN CONG TY LA : \n");for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    117/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 117/ 127

    }

    void main(){

    clrscr();nhanvien nv[50];char x[30]="bt47.txt",ch;int n,stt;printf("nhap so luong nhan vien cong ty ");scanf("%d",&n);nhap(nv,n);while(1) // sua va luu file cho den khi nao bam so phim so 0{

    savefile(nv,n,x);printf("Ban can sua thong tin k - Nhan phim so 0 de

    thoat Nhan phim bat ki de tiep tuc \n");ch=getch();if(ch=='0')

    break;

    printf("\nBan can sua thong tin cua nhan vien thu

    may");scanf("%d",&stt);repair(nv,stt);

    }printf("\n Luong thap nhat cua co quan la %.2f

    ",min_luong(nv,n));printf("\n Luong trung binh la %.2f:",average_luong(nv,n));In_danhsach(nv,n);in_list_max(nv,n);

    getch();

    }

  • 7/21/2019 Bai Tap c Thuong Gap

    118/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 118/ 127

  • 7/21/2019 Bai Tap c Thuong Gap

    119/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 119/ 127

    Bai 48 :#include#include#include

    /*-------------Ham dem so lan xuat hien cua mot ki tu -----------*/

    int dem_sotu(char str[255],char n){

    int dem=0,x= strlen(str);for (int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    120/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 120/ 127

    clrscr();char s[50]="bt48.txt";char c;printf(" Nhap vao ki tu can dem :");

    scanf("%c",&c);printf(" Ki tu xuat hien trong file %ld lan",count_tu(s,c));

    getch();}

    Bai 49 :#include#include#include

    /*-----------Ham dem so tu tren mot chuoi cho truoc ------*/

    int count_sotu(char *str)//con tro *str cho den dia chi str

    { int dem;int x = strlen(str);if (str[0]==' ')

    dem =0;else

    dem=1;for (int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    121/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 121/ 127

    /* -----------------Dem so tu trong file -------------------*/

    long count_tu(char s[50]){

    long dem=0;FILE *fp=fopen(s,"rt"); // Mo file de docchar str[255];char *x = fgets(str,255,fp);

    while(x!= NULL){

    dem+=count_sotu(str);x=fgets(str,255,fp);

    }fclose(fp);return dem;

    }

    /*-----------Ham chinh ----------------------*/

    void main(){

    clrscr();char s[50]="bt49.txt";printf(" Trong file co %ld tu",count_tu(s));getch();

    }

  • 7/21/2019 Bai Tap c Thuong Gap

    122/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 122/ 127

    Bai 50 ;#include#include#includevoid ghi(char s[50],char s1[50],char s2[50]){

    FILE *fp=fopen(s1,"rt");FILE *fq=fopen(s2,"rt");FILE *fk=fopen(s,"a+t");char c[255];int n;

    // char *x=fgets(c,255,p);/* while(x!=NULL)

    { fputs(c,q);x=fgets(c,255,fp);

    } */char ch; int dem=1;while((ch=getc(fp))!=EOF) //neu gap ki tu cuoi file thi ket thuc{

    fprintf(fk,"%c",ch);}fclose(fp);

    while((ch=getc(fq))!=EOF){

    if(dem==1){

    if(ch>65&&ch

  • 7/21/2019 Bai Tap c Thuong Gap

    123/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 123/ 127

    fprintf(fk,"%c",ch);dem++;

    }fclose(fq);

    fclose(fk);

    }void main(){

    clrscr();char s1[50]="bt50a.txt";char s2[50]="bt50b.txt";char s[50]="filenoi.txt";ghi(s,s1,s2);getch();

    }

  • 7/21/2019 Bai Tap c Thuong Gap

    124/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 124/ 127

    Mot So Bai Lam Them , Ti ay Ban Hay T Mnh Nhn VaoBai Va Suy Ra e Bai i Nhe . Hay Th Xem va Toi Ngh La

    Ban Se Lam c ieu o .

    Bai Them 1 :#include#includevoid nhap(int a[10][10],int n){

    for(int i=0;i

  • 7/21/2019 Bai Tap c Thuong Gap

    125/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 125/ 127

    int min_hang(int a[10][10],int n,int i){

    int min=a[i][0];for(int z=0;z

  • 7/21/2019 Bai Tap c Thuong Gap

    126/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    http://vndownloads.net 126/ 127

    }}void main(){

    int a[10][10],n;clrscr();printf("nhap n:");scanf("%d",&n);nhap(a,n);xuat(a,n);yenngua(a,n);

    getch();}

    Bai Them 2:

    #include#includelong double gt(int n)

    {

    int kq=1,q=0,i;for(i=1;i=100000){

    kq/=100000;q+=5;}

    }return kq;

    }void main()

    {

  • 7/21/2019 Bai Tap c Thuong Gap

    127/127

    Bi Tp Thc Hnh Mn Lp Trnh CBn 2

    clrscr();unsigned long giaithua;

    int n,k,q,tohop;printf("nhap n:");

    scanf("%d",&n);printf("nhap k:");scanf("%d",&k);giaithua=gt(n);printf("giai thua cua %d la:%lu",n,giaithua);printf("\ngiai thua cua %d la:%lu",k,gt(k));

    tohop=gt(n)/(gt(k)*gt((n-k)));printf("\nto hop chap %d cua %d la:%d",k,n,tohop);

    getch();}

    Bai Them 3 :