Viết chương trình tính tiền điện python

Bài 3: Viết chương trình tính tiền điện với chỉ số mới và chỉ số cũ Được nhập vào từ bàn phím. In ra màn hình chỉ số cũ, chỉ số mới và số tiền phải trả. Biết rằng 100 kWh đầu giá 1000, từ kWh 101 – 150 giá 1200, từ kWh 151 – 200 giá 2000, từ 201 trở lên giá 2500.

Code c:

#include <stdio.h>

#include <conio.h>

int main() {

    int csm, csc, tien, tieuthu;

    printf("Nhap chi so moi = ");

    scanf("%d", &csm);

    printf("Nhap chi so cu = ");

    scanf("%d", &csc);

    tieuthu=csm-csc;

    if(tieuthu<=100)

             tien=tieuthu*1000;

    else

            {

                if(tieuthu<=150)

                tien=100*1000 + (tieuthu-100)*1200;

                          else

                        {

                        if(tieuthu<=200)

                            tien=100*1000 + 50*1200 + (tieuthu-150)*2000;

                            else

                                    {

                                    if(tieuthu>=201)

                                        tien=100*1000 + 50*1200 + 50*2000 + (tieuthu-200)*2500;

            }           }           }

    printf("\n CSM = %d", csm);

    printf("\n CSC = %d", csc);

    printf("\n Tien = %d", tien);

    getch();

}

Một số bài tập viết bằng C và Python của một bạn mình sưu tầm được. Code này chưa được tối ưu cho lắm nhưng mang tính chất tham khảo cho các bạn mới học rất good

Bài 1

Biết lãi suất tiết kiệm là t%/tháng (nhập t từ bàn phím). Nhập số vốn ban đầu n và số tháng gửi k. Tính số tiền nhận được sau k tháng.

Viết bằng C

#include<stdio.h> #include<conio.h> #include<math.h> void main() { float t,n; int k; printf("Nhap lai suat: "); scanf("%f",&t); printf("Nhap so tien gui ban dau: "); scanf("%f",&n); printf("Nhap so thang gui: "); scanf("%d",&k); for(int i=1;i<=k;i++) { n=n+n*(t/100); } printf("Tong so tien nhan duoc la %f",n); getch(); }

Viết bằng python

def bai1(t,n,k): for i in range(k): n=n+n*t/100 print "Tong so tien nhan duoc la:" print n if __name__=="__main__": t=float(raw_input("Nhap lai suat: ")) n=float(raw_input("Nhap so tien gui ban dau: ")) k=int(raw_input("Nhap so thang gui: ")) bai1(t,n,k)   

Bài 2: Tiền điện hàng tháng được tính như sau: - 100 số đầu tính m1 đồng/số - từ số 101 trở lên tính m2 đồng/số Nhập m1,m2, số điện năng tiêu thụ s. Hãy tính tiền điện phải trả.

Code C

#include<stdio.h> #include<conio.h> #include<math.h> void main() { float m1,m2,t; int s; printf("Nhap don gia cho 100 so dau : "); scanf("%f",&m1); printf("Nhap don gia tu so 101 tro len: "); scanf("%f",&m2); printf("Nhap so dien dung trong thang:"); scanf("%d",&s); if((s<100)&&(s>0)) { t=s*100; printf("So tien phai tra la: %f",t ); } else { t=m1*100+(s-100)*m2; printf("So tien phai tra la: %f",t); } getch(); }



Code Python

def bai2(m1,m2,s): if(s<100): t=100*m1 print "so tien phai tra la:",t else: t=100*m1+(s-100)*m2 print "so tien phai tra la:",t if __name__=="__main__": m1=float(raw_input("Nhap don gia cho 100 so dau: ")) m2=float(raw_input("Nhap don gia so 101 tro len: ")) s=int(raw_input("Nhap so dien da dung trong thang: ")) bai2(m1,m2,s)

 

Bài 3: In ra m số nguyên tố đầu tiên

Input: Nhập vào số nguyên m


Process - Viết hàm kiểm tra tính nguyên tố của số k + nếu k<2: k không phải là số nguyên tố + lặp biến i từ 2 đến sqrt(k) nếu k%i==0 thì k ko phải là số nguyên tố - in ra các số nguyên tố: + gán biến dem=0, k=0 + lặp: trong khi dem<m thì: nếu k là nguyên tố: in k, tăng dem++ tăng k++

Output in ra m số nguyên tố đầu tiên

code C

#include<stdio.h> #include<conio.h> #include<math.h> int check_prime(int x) { if(x<2) return 0; for(int i=2;i<=sqrt(x);i++) if(x%i==0) return 0; return 1; } void main() { int m; int k=1,dem=0; printf("Nhap m: "); scanf("%d",&m); printf("%d so nguyen to dau tien la: ",m); while(dem<m) { if(check_prime(k)==1) { printf("%4d",k); dem++; } k++; } getch(); }


Code python (chưa giải quyết trong hàm check_prime xét 2 đến sqrt(x))

def check_prime(x): if(x<2): return 0 elif(x==2): return 1 t=range(x) for i in t[2:]: if(x%i==0): return 0 return 1 if __name__=="__main__": m=int(raw_input("Nhap m: ")) print m, "so nguyen to dau tien la: " dem=k=0 while(dem<m): if(check_prime(k)==1): print k, dem=dem+1 k=k+1   

Bài 4: Tìm phân số tối giản của một phân số. Ý tưởng: Ta tìm UCLN của tử số và mẫu số bằng giải thuật Euclid, sau đó chia cả tử và mẫu cho UCLN.

Code C

#include<stdio.h> #include<conio.h> int UCLN(int a, int b) { if (a < 0) a = -a; if (b < 0) b = -b; while (a&&b) { if(a >= b) a %= b; else b %= a; } return (a + b); } void main() { int tu,mau; printf("Nhap tu so: "); scanf("%d",&tu); printf("Nhap mau so: "); scanf("%d",&mau); printf("Phan so ban vua nhap la: %d/%d \n",tu, mau); printf("Phan so toi gian la: %d/%d",tu/UCLN(tu,mau),mau/UCLN(tu,mau)); getch(); }


Code Python

def ucln(a,b): if(a<0): a=-a if(b<0): b=-b while(a&b): if(a>=b): a=a%b else: b=b%a return(a+b) if __name__=="__main__": tu=int(raw_input("Nhap tu so: ")) mau=int(raw_input("Nhap mau so: ")) print "Phan so ban vua nhap la: ",tu,"/",mau print "Phan so toi gian la: ", tu/ucln(tu,mau),"/",mau/ucln(tu,mau)   

Bài 5: Nhập một số nguyên, đếm xem số đó có bao nhiêu chữ số và tính tổng các chữ số.

Code C

#include<stdio.h> #include<conio.h> void main() { int n,sodu,dem=0,s=0; printf("Nhap vao n: "); scanf("%d",&n); while(n>0) { sodu=n%10; s=s+sodu; dem++; n=n/10; } printf("So da nhap co %d chu so",dem); printf("\nTong cac chu so la %d",s); getch(); }


Code Python

def bai5(n): s,dem=0,0 while(n>0): sodu=n%10 s=s+sodu dem=dem+1 n=n/10 print "So da nhap co",dem,"chu so" print "Tong cac chu so la: ",s if __name__=="__main__": n=int(raw_input("Nhap vao n: ")) bai5(n)   

Bài 6: Tìm các số có 3 chữ số sao cho tổng lập phương của các chữ số bằng chính số đó (gọi là các số Amstrong)

Code C

#include<stdio.h> #include<conio.h> void main() { int a,b,c; for(a=1;a<10;a++) for(b=0;b<10;b++) for(c=0;c<10;c++) if(a*a*a+b*b*b+c*c*c==100*a+10*b+c) printf("%d \n",100*a+10*b+c); getch(); }


Code Python

if __name__=="__main__": t=range(10) for a in t[1:]: for b in t: for c in t: if(a*a*a+b*b*b+c*c*c==100*a+10*b+c): print 100*a+10*b+c