Solution Bài tập 1:
#include<stdio.h>
#include<math.h>
int main(){
float N;
//1. Nhập liệu
printf("\nMoi ban nhap 1 so bat ky: ");
scanf("%f",&N);
//2. Kiểm tra N nguyên hay không:
if(N==(int)N){
printf("\n%g la so nguyen",N);
//3. Kiểm tra tính chẵn lẻ:
if((int)N%2==0){
printf("\n%g la so chan",N);
//4. Kiêm tra chẵn dương
if(N>0){
printf("\n%g la so chan duong",N);
}else{
printf("\n%g khong phai la so chan duong",N);
}
}else{
printf("\n%g la so le",N);
//5. Kiêm tra lr âm
if(N<0){
printf("\n%g la so le am",N);
}else{
printf("\n%g khong phai la so le am",N);
}
}
//6. Kiểm tra chính phương
//Hàm lấy căn bậc 2: sqrt()
float canBacHai;
if(N>0){
canBacHai=sqrt(N);
if(canBacHai==(int)canBacHai){
printf("\n%g la so chinh phuong",N);
}else{
printf("\n%g khong phai la so chinh phuong",N);
}
}else{
printf("\n%g khong thoa man dieu kien cua 1 so chinh phuong",N);
}
//7. Kiểm tra đặc biệt
if(0<N && N<1000){
int hangDonVi=(int)N%10;
int hangChuc=(int)N/10%10;
int hangTram=(int)N/100%10;
if(N==pow(hangDonVi,3)+pow(hangChuc,3)+pow(hangTram,3)){
printf("\n%g la so dac biet",N);
}else{
printf("\n%g khong phai la so dac biet",N);
}
}else{
printf("\n%g khong du dieu kien de xet tinh dac biet",N);
}
}else{
printf("\n%g khong phai la so nguyen",N);
}
return 0;
}
Solution Bài tập 2:
#include<stdio.h>
int main(){
int a=5, b=10;
int trungGian;
printf("\nTruoc khi hoan vi, a=%d, b=%d",a,b);
//Tiến hành hoán vị:
trungGian=a;
a=b;
b=trungGian;
printf("\nSau khi hoan vi, a=%d, b=%d",a,b);
return 0;
}
Solution Bài tập 3 ý a:
#include<stdio.h>
int main(){
int a=3, b=5, c=2, d=4;
int Max, Min;
//Thuật toán tìm Max:
Max=a;
if(Max<b)
Max=b;
if(Max<c)
Max=c;
if(Max<d)
Max=d;
printf("\nMax = %d",Max);
//Thuật toán tìm Min:
Min=a;
if(Min>b)
Min=b;
if(Min>c)
Min=c;
if(Min>d)
Min=d;
printf("\nMin = %d",Min);
return 0;
}
Solution Bài tập 8:
#include <iostream>
using namespace std;
int main() {
int n,m,a,average;
cin>>n>>m;
average=(n+1)/2;
if(m>average){
a=m-1;
}else if(m<average){
a=m+1;
}else{
if(n%2!=0)
a=1;
else
a=m+1;
}
cout<<a;
return 0;
}