[Kỹ thuật lập trình - C/C++] Cấu trúc điều khiển trong C/C++ [Bài tập 170816]

[Kỹ thuật lập trình - C/C++] Cấu trúc điều khiển trong C/C++ [Bài tập 170816]


Cấu trúc điều khiển trong C/C++
* Tóm tắt lý thuyết
 + Cấu trúc rẽ nhánh
   if (điều kiện)
   {
      Câu lệnh 1;
   }
   else
   {
     Câu lệnh 2;
    }

  Trong đó: 
    - điều khiện: biểu thức logic
    - else có thể có hoặc không
    - Câu lệnh có thể là lệnh đơn, lệnh phúc hoặc cấu trúc khác

 + Cấu trúc lựa chọn
   switch (biểu thức) {
      case gt1:
       Câu lệnh 1;
       [break;]
      
      case gt2:
       Câu lệnh 2;
       [break;]
   
       ...
      case gtn:
       Câu lệnh n;
       [break;]
   [    default:
      Câu lệnh 0;   ]
   }

  Trong đó:
    - Biểu thức cho giá trị cụ thể
    - break,default: có thể có hoặc không
    - Câu lệnh có thể là lệnh đơn, lệnh phức, hoặc một cấu trúc khác

 + Cấu trúc lặp
   - for
     for (bt khởi tạo ; điều kiện ; bt thiết lập lại)
      {
        câu lệnh ;
      }

   - while
     while (điều kiện)
      {
         Câu lệnh;
      }


   - do/while
    do{
      Câu lệnh;
   } while (điều kiện);

 

* Bài tập áp dụng 
 (Chương trình được mã hóa trên TurboC++ 3.0)

Bài 1 Quản lý điểm
- Nhập vào điểm 5 học kỳ và số tín chỉ tương ứng
 (0 <= điểm <= 10, 20 <= số tín chỉ <= 25)
- Tính điểm trung bình
- In ra điểm chữ và điểm tích lũy

#include<iostream.h>
#include<conio.h>

void main(){
// khai bao bien
float diemK1,diemK2,diemK3,diemK4,diemK5;
int tcK1,tcK2,tcK3,tcK4,tcK5;
// Nhap diem va so tin chi

cout<<"\n Nhap diem: ";
do{
  cout<<"\n Diem ky 1: "; cin>>diemK1;
  if(diemK1<0||diemK1>10)
    cout<<"\n Nhap lai diem !";
  }while(diemK1<0||diemK1>10);


do{
  cout<<"\n Diem ky 2: "; cin>>diemK2;
  if(diemK2<0||diemK2>10)
    cout<<"\n Nhap lai diem !";
  }while(diemK2<0||diemK2>10);


do{
  cout<<"\n Diem ky 3: "; cin>>diemK3;
  if(diemK3<0||diemK3>10)
    cout<<"\n Nhap lai diem !";
  }while(diemK3<0||diemK3>10);


do{
  cout<<"\n Diem ky 4: "; cin>>diemK4;
  if(diemK4<0||diemK4>10)
    cout<<"\n Nhap lai diem !";
  }while(diemK4<0||diemK4>10);


do{
  cout<<"\n Diem ky 5: "; cin>>diemK5;
  if(diemK5<0||diemK5>10)
    cout<<"\n Nhap lai diem !";
  }while(diemK5<0||diemK5>10);

cout<<"\n \n Nhap so tin chi: ";

do{
  cout<<"\n So tin chi ky 1: "; cin>>tcK1;
  if(tcK1<20||tcK1>25)
    cout<<"\n Nhap lai so tin chi !";
  }while(tcK1<20||tcK1>25);


do{
  cout<<"\n So tin chi ky 2: "; cin>>tcK2;
  if(tcK2<20||tcK2>25)
    cout<<"\n Nhap lai so tin chi !";
  }while(tcK2<20||tcK2>25);
 

do{
  cout<<"\n So tin chi ky 3: "; cin>>tcK3;
  if(tcK3<20||tcK3>25)
    cout<<"\n Nhap lai so tin chi !";
  }while(tcK3<20||tcK3>25);

do{
  cout<<"\n So tin chi ky 4: "; cin>>tcK4;
  if(tcK4<20||tcK4>25)
    cout<<"\n Nhap lai so tin chi !";
  }while(tcK4<20||tcK4>25);

do{
  cout<<"\n So tin chi ky 5: "; cin>>tcK5;
  if(tcK5<20||tcK5>25)
    cout<<"\n Nhap lai so tin chi !";
  }while(tcK5<20||tcK5>25);


 // Tinh diem
float 
diemTB=(diemK1*tcK1+ diemK2*tcK2+ diemK3*tcK3+ diemK4*tcK4+ diemK5*tcK5) / (tcK1+tcK2+tcK3+tcK4+tcK5);

// in diem chu, diem tich luy
char diemChu;
int diemTL;
if(diemTB>=8.5) {diemChu='A'; diemTL=4;}
else
  if(diemTB>=7) {diemChu='B'; diemTL=3;}
  else 
   if(diemTB>=5.5) {diemChu='C'; diemTL=2;}
   else
    if(diemTB>=4) {diemChu='D'; diemTL=1;} 
    else
           {diemChu='F'; diemTL=0;} 
cout<<"\n *Diem chu: "<<diemChu<<"\n *Diem tich luy: "<<diemTL; 

getch();



 

 -----------------------------------------------------
Bài 2: Tính s=x/1 +x^2/2 +... + x^n/n
  (x là số thực, 1 <= x <=3; n là số nguyên 3<= n <= 100)


#include<iostream.h>
#include<conio.h>
#include<math.h>

void main(){
// khai bao bien
 float x;
 int n;
// Nhap so lieu
do{
  cout<<"\n x: "; cin>>x;
  if(x<1||x>3)
    cout<<"\n Nhap lai x !";
  }while(x<1||x>3);


do{
  cout<<"\n n: "; cin>>n;
  if(n<3||n>100)
    cout<<"\n Nhap lai n !";
  }while(n<3||n>100);

// Tinh S
float s=0;
for(int i=1;i<=n;i++)
  s=s+(float)pow(x,i)/i;
cout<<"\n S= "<<s;

getch();
}

Một số tài liệu và khoá học bổ ích dành cho bạn: 

# Giáo Trình: Kỹ Thuật Lập Trình C/C++ Căn Bản Và Nâng Cao [Click để xem]

# Khoá học online: Học lập trình C/C++ TỪ A - Z [Click để xem]

--------------------------
>> Tham khảo thêm Tại đây





 

[Java căn bản] Cấu trúc if - else trong Java

[Java căn bản] Cấu trúc if - else trong Java 

* Cú pháp
if (biều thức điều kiện)
{
   Công việc 1;
}
else
{
   Công việc 2;
}

** Lưu đồ

/*
 Bài tập ví dụ cấu trúc if / else trong lập trình Java
 http://lap-trinh-may-tinh.blogspot.com/
Lưu ý:
 - Chương trình viết trên công cụ Netbean.
 - Các ví dụ viết trong cùng project baitap160816.
*/


package baitap160816;
import java.util.Scanner;

/* Bài 1: 
    Giải và biện luận ax^2 + bx + c =0
    (a, b, c nhập từ bàn phím)
*/
 
class Bai1{
    float a,b,c;
 
    // Nhập a,b,c
    void NhapHS(){
        Scanner inp=new Scanner(System.in);
        System.out.println(" ***************** \n Bài1: \n Nhap he so: ");
        System.out.print("\n a= ");
        a=inp.nextFloat();
        System.out.print("\n b= ");
        b=inp.nextFloat();
        System.out.print("\n c= ");
        c=inp.nextFloat();
    }
    // Giải và biên luận
    void Giai_BL(){
        if(a==0)
            if(b==0)
                if(c==0)
                    System.out.println("Phuong trinh vo so nghiem");
                else
                    System.out.println("Phuong trinh vo nghiem");
            else
                System.out.println("Phuong trinh co 1 nghiem x="+(-c/b));
        else
        {
            float delta=b*b-4*a*c;
            if (delta<0)
                System.out.println("Phuong trinh vo nghiem");
            if(delta==0)
                System.out.println("Phuong trinh co nghiem kep x1=x2="+(-b/(2*a)));
            if(delta>0)
                System.out.println("Phuong trinh co 2 nghiem x1= "+(-b-Math.sqrt(delta))/(2*a)+"; x2= "+(-b+Math.sqrt(delta))/(2*a));
        }
                 
    }
 
}


/* -------------------------------------------- */

/*  Bài 2
-Nhập vào điểm lập trình C (5 tín chỉ), csdl (3 tín chỉ), tiếng anh (4 tín chỉ), mạng máy tính (2 tín chỉ)
-Tính điểm trung bình
-In ra điểm chữ
*/

class Bai2{
    float dLTC,dCSDL,dTA,dMangMT;
 
    // Nhập a,b,c
    void NhapDiem(){
        Scanner inp=new Scanner(System.in);
        System.out.println(" ***************** \n Bài2:  \n Nhap Nhap diem: ");
        System.out.print("\n Diem LT C= ");
        dLTC=inp.nextFloat();
        System.out.print("\n Diem CSDL= ");
        dCSDL=inp.nextFloat();
        System.out.print("\n Diem TA= ");
        dTA=inp.nextFloat();
        System.out.print("\n Diem Mạng may tinh= ");
        dMangMT=inp.nextFloat();
    }

    // Tính điểm trung bình và in điểm chữ

    void TinhDiem(){
     
         float dTB;
         dTB=(dLTC*4+dCSDL*3+dTA*4+dMangMT*2)/13;
         // In diem TB
          System.out.println("Diem trung binh = "+dTB);
       
        // In diem chu
        char dChu;
        if(dTB>=8.5) dChu='A';
        else
            if(dTB>7.0) dChu='B';
            else
                if (dTB>5.5) dChu='C';
                else
                    if(dTB>4.0) dChu='D';
                    else dChu='F';
         System.out.println("Diem chu = "+dChu);
    }
}



/*
Class chính -    Khai báo đối tượng
*******************************************
*/

public class BaiTap160816 {
    public static void main(String[] args) {
     
        // Khai bao doi tuong Bai 1
        Bai1 t1=new Bai1();
        t1.NhapHS();
        t1.Giai_BL();
     
        // Khai bao doi tuong Bai 2
        Bai2 t2=new Bai2();
        t2.NhapDiem();
        t2.TinhDiem();
    }
 
}


---------------------------
Xem thêm tài liệu hướng dẫn Java Tại đây

Một số tài liệu và khoá học bổ ích dành cho bạn: 

# Tài liệu: Lập trình hướng đối tượng JAVA core dành cho người mới bắt đầu học lập trình [Click để xem]

# Khoá học online: Lập trình Java trong 4 tuần [Click để xem]


* Có thể bản quan tâm: [MMO] Hướng Dẫn *Kiếm Tiền Tự Động* Với Các Ứng Dụng Treo Máy *CỰC KỲ ĐƠN GIẢN VÀ HIỆU QUẢ*

http://lap-trinh-may-tinh.blogspot.com

[Java] Ví dụ về lớp trừu tượng và phương thức trừu tượng (abstract) - Tính điểm [Lập trình hướng đối tượng - OOP]

Xây dựng Project theo mô hình kế thừa sau:




Trong đó: Điểm tổng kết = trung bình cộng theo số tín chỉ của từng môn học.

[NetBean]
1. Xây dựng Project như sau:

2. Code:
//-------------------------------------------
// class SV
//-------------------------------------------

package vd_adstract_130114;
abstract class SV {
    String hoTen, diaChi,he;
    int namSinh;
    // phuong thuc khoi tao
    public SV(String hoTen, String diaChi,String he,int namSinh){
        this.hoTen=hoTen;
        this.diaChi=diaChi;
        this.he=he;
        this.namSinh=namSinh;
    }
    // Tinh diem
    abstract float TinhDiem();
    // diem chu
    char DiemChu(){
        float diem=TinhDiem();
        char dchu;
        if(diem<4)
            dchu='F';
        else if(diem<5.5)
            dchu='D';
        else if(diem<7)
            dchu='C';
        else if(diem<8.5)
            dchu='B';
        else dchu='A';
        
        return dchu;
    }
    // in ket qua
    void InKQ(){
        System.out.print("\n\n IN KET QUA SINH VIEN "+he);
        System.out.print("\n + Ho ten: "+hoTen);
        System.out.print("\n + Dia chi: "+diaChi);
        System.out.print("\n + Nam sinh: "+namSinh);
        System.out.print("\n + Diem tong ket: "+TinhDiem());
        System.out.println("\n + Diem chu: "+DiemChu());        
    }

}

//-------------------------------------------
// class SVCD
//-------------------------------------------

package vd_adstract_130114;
class SVCD extends SV{
    float dTA,dToan,dLT,dCSDL;
    // khoi tao
    public SVCD(String hoTen, String diaChi,String he,int namSinh,float dTA, float dToan,float dLT,float dCSDL){
        super(hoTen,diaChi,he,namSinh);
        this.dCSDL=dCSDL;
        this.dLT=dLT;
        this.dTA=dTA;
        this.dToan=dToan;
    }
    // Tinh diem
    float TinhDiem(){
        return (dTA*2+dToan*2+dLT*3+dCSDL*2)/10;
    }

}


//-------------------------------------------
// class SVDH
//-------------------------------------------

package vd_adstract_130114;

public class SVDH extends SV {
    float dTA,dToan,dLT,dCSDL,dTTNT;
    // khoi tao
    public SVDH(String hoTen, String diaChi,String he,int namSinh,float dTA, float dToan,float dLT,float dCSDL,float dTTNT){
        super(hoTen,diaChi,he,namSinh);
        this.dCSDL=dCSDL;
        this.dLT=dLT;
        this.dTA=dTA;
        this.dToan=dToan;
    }
    // Tinh diem
    float TinhDiem(){
        return (dTA*2+dToan*2+dLT*3+dCSDL*2+dTTNT*2)/12;
    }

}

//-------------------------------------------
// class Main

/*
 * http://www.laptrinhmaytinh.net
 */

package vd_adstract_130114;

public class VD_adstract_130114 {

    public static void main(String[] args) {
        // khai bao doi tuong SVCD
        SVCD t=new SVCD("Nguyen Van A","DH Thanh Do","CAO DANG",1994,6,7,8,9);
        t.InKQ();
        // khai bao doi tuong SVDH
        SVDH t1=new SVDH("Nguyen Van B","DH Thanh Do","DAI HOC",1994,8,7,7,8,9);
        t1.InKQ();
        
    }    

}

Một số tài liệu và khoá học bổ ích dành cho bạn: 

# Tài liệu: Lập trình hướng đối tượng JAVA core dành cho người mới bắt đầu học lập trình [Click để xem]

# Khoá học online: Lập trình Java trong 4 tuần [Click để xem]


* Có thể bản quan tâm: [MMO] Hướng Dẫn *Kiếm Tiền Tự Động* Với Các Ứng Dụng Treo Máy *CỰC KỲ ĐƠN GIẢN VÀ HIỆU QUẢ*


[Java] Hiển thị ngày và thời gian hiện tại

Để hiện thị ngày tháng và thời gian hiện tại của hệ thống chỉ cần khai báo thư viện
// get current date and time
java.util.Date date=new java.util.Date();


Code Java: Hiển thị ngày, thời gian hiện tại dưới dạng đồng hồ số

/******************************************************************************
* File : SimpleClock.java
* Author : http://lap-trinh-may-tinh.blogspot.com/
* Description :
* Display a digital clock
* Tested with : JDK 1.6
******************************************************************************/

import javax.swing.JLabel;
public class SimpleClock {

public static void main(String[] args) throws Exception
{

// create a image label
JLabel label=new JLabel("", JLabel.CENTER);
label.setPreferredSize(new java.awt.Dimension(300,200));

// create frame
javax.swing.JFrame frame=new javax.swing.JFrame();
frame.setDefaultCloseOperation(javax.swing.JFrame.EXIT_ON_CLOSE);
frame.setTitle("Macteki SimpleClock");
frame.add(label); // add the imageLabel to the frame
frame.pack(); // set the window size to the size of the component (imageLabel)
frame.setVisible(true);
while (true)
  {
   Thread.sleep(500);
   java.util.Date date=new java.util.Date();
   label.setText(""+date);
  }
 }
}

Một số tài liệu và khoá học bổ ích dành cho bạn: 

# Tài liệu: Lập trình hướng đối tượng JAVA core dành cho người mới bắt đầu học lập trình [Click để xem]

# Khoá học online: Lập trình Java trong 4 tuần [Click để xem]

* Có thể bản quan tâm: [MMO] Hướng Dẫn *Kiếm Tiền Tự Động* Với Các Ứng Dụng Treo Máy *CỰC KỲ ĐƠN GIẢN VÀ HIỆU QUẢ*

Categories

AI (12) AI programming (1) ASP (1) Android (31) App Honeygain (4) Assembly (17) Biểu diễn thuật toán (1) Bubble-Sort (1) Bài giảng (2) Bài giảng lập trình C và Cpp (21) Bài viết hay (103) Bản đồ tư duy (1) C Plus Plus (103) C/C++ (16) CDSL phân tán (1) CSS (2) Cơ sở dữ liệu (10) Danh ngôn lập trình (1) Datamining (4) Genetic Algorithm (1) Giáo trình (2) Giải thuật tiến hóa - thuật toán di truyền (2) Google App Engine (2) Góc học tập (34) HTML (1) Hướng dẫn kiếm tiền online tại nhà (6) Hướng dẫn sử dụng Emu8086 (1) Học lập trình (131) Học lập trình C và CPP qua ví dụ (17) Java (54) Java Căn bản (6) JavaScript (5) Kỹ năng đọc hiệu quả (1) Kỹ thuật lập trình (16) Kỹ thuật đồ họa máy tính (10) Lý thuyết Cơ sở dữ liệu (2) Lý thuyết đồ thị (11) Lập trình Cơ sở dữ liệu (2) Lập trình Python (2) Lập trình căn bản (8) Lập trình hướng đối tượng với Java (7) Lập trình mobile (7) Lập trình mạng (6) Lập trình nhúng (1) Lập trình trí tuệ nhân tạo (2) ML (1) MMO (6) MS Access (1) Machine learning (2) Mạng máy tính (1) Mẹo tìm kiếm trên Google (1) Nghiên cứu khoa học (2) Ngôn ngữ lập trình (2) Những cuốn sách hay mà bạn nên đọc khi còn trẻ (1) Pascal (3) Phương pháp tính toán tối ưu (2) Phương pháp tối ưu (2) Quản lý dự án CNTT (1) SEO (1) SQL (5) Swift (9) Sách hay (4) Thiết kế Web (2) Thuật toán (51) Thuật toán Sắp Xếp -Sort (9) Thuật toán Tìm kiếm - Search (5) Thuật toán di truyền (4) Thực hành Android (2) Tin học văn phòng (5) Tiện ích máy tính (3) Toán rời rạc (13) Treo máy kiếm tiền (3) Trí tuệ nhân tạo (18) Tài liệu tham khảo (4) Tìm hiểu Blockchain (2) Tự học Android (3) Tự học Android qua ví dụ (1) Tự học JavaScript (1) Tự học lập trình (7) Tự học lập trình Android (17) Tự học lập trình C và CPP (14) Tự học lập trình java qua các ví dụ (8) XML (1) blockchain (2) bài giảng quản lý dự án CNTT (1) bài tập java (3) bài tập lập trình (4) cấu trúc dữ liệu giải thuật (15) hướng dẫn viết báo (1) học lập trình Java (11) học máy (4) hợp ngữ (8) lập trình viên (3) phưng pháp đơn hình (2) thuật toán AI (2) tài liệu CNTT miễn phí (3) tính toán tối ưu (1) tự học lập trình iOS (8) tự học lập trình python (1) ví dụ Assembly (1) Đại số gia tử và ứng dụng (1) Đồ họa (4)