Trang chủ Tin Học Lớp 10 Viết chương trình các bài sau trong đó có sử...

Viết chương trình các bài sau trong đó có sử dụng hàm hoặc thủ tục: -Tìm UCLN, BCNN của 2 số nguyên -Tính n! Với n nguyên -Tính a^b với a,b thực -Tráo đổi 2 số

Câu hỏi :

Viết chương trình các bài sau trong đó có sử dụng hàm hoặc thủ tục: -Tìm UCLN, BCNN của 2 số nguyên -Tính n! Với n nguyên -Tính a^b với a,b thực -Tráo đổi 2 số nguyên x và y

Lời giải 1 :

Bài 1: UCLN và BCNN 

Program FNG;
Uses crt;
Var x,y: qword;

Function UCLN(a,b: qword): qword;
Var r: qword;
Begin
        While a<>0 do
        Begin
                r:=b mod a;
                b:=a;
                a:=r;
        End;
        UCLN:=b;
End;

Begin
        Clrscr;
        Write('Nhap x, y: '); Readln(x,y);
        Writeln('UCLN = ',UCLN(x,y));
        Write('BCNN = ',x*y div UCLN(x,y));
        Readln
End.

Bài 2:

Program FNG;
Uses crt;
Type bignum = Ansistring;
Var St,so: bignum;
    n,i: longint;

Function add(a,b: bignum): bignum;
Var sum,carry,i: longint;
    c: bignum;
Begin
        carry:=0; c:='';
        While length(a)<length(b) do a:='0'+a;
        While length(b)<length(a) do b:='0'+b;
        For i:=length(a) downto 1 do
        Begin
                sum:=Ord(A[i])-48 + Ord(B[i])-48 + carry;
                carry:=sum div 10;
                c:=chr(sum mod 10+ 48) + c;
        End;
        If carry>0 then c:='1'+c;
        add:=c;
End;

Function multiply1(a: bignum; b: longint): bignum;
Var i: longint;
    carry,s: longint;
    c,tmp: bignum;
Begin
        c:='';
        carry:=0;
        For i:=length(a) downto 1 do
        Begin
                s:=(Ord(A[i])-48)*b + carry;
                carry:=s div 10;
                c:=chr(s mod 10+48)+c;
        End;
        If carry>0 then Str(carry,tmp) else tmp:='';
        multiply1:=tmp+c;
End;

Function multiply2(a,b: bignum): bignum;
Var sum,tmp: bignum;
    m,i,j: longint;
Begin
        m:=-1;
        sum:='';
        For i:=length(a) downto 1 do
        Begin
                m:=m+1;
                tmp:=multiply1(b,Ord(A[i])-48);
                For j:=1 to m do tmp:=tmp+'0';
                sum:=add(tmp,sum);
        End;
        multiply2:=sum;
End;

Begin
        Clrscr;
        Write('Nhap n: '); Readln(n);
        St:='1';
        For i:=1 to n do
        Begin
                Str(i,so);
                St:=Multiply2(St,so);
        End;

        Write(n,'! = ',St);
        Readln
End.

Bài 3:

Program FNG;
Uses crt;
Var a,b: extended;

Function luythua(x,y: extended): extended;
Begin
        luythua:=exp(ln(x)*y);
End;

Begin
        Clrscr;
        Write('Nhap a, b: '); Readln(a,b);
        Write(a:0:2,'^',b:0:2,' = ',luythua(a,b):0:2);
        Readln
End.

Bài 4: 

Program FNG;
Uses crt;
Var a,b: qword;

Procedure doi;
Var tg: qword;
Begin
        tg:=a;
        a:=b;
        b:=tg;
End;

Begin
        Clrscr;
        Write('Nhap a,b: '); Readln(a,b);
        doi;
        Write(a,' ',b);
        Readln
End.

Thảo luận

Lời giải 2 :

1)

#include <bits/stdc++.h>
using namespace std;
int gcd(int a, int b) {
    int tmp;
    while(b != 0) {
        tmp = a % b;
        a = b;
        b = tmp;
    }
    return a;
}
int main(){
    int a,b;
    cin>>a>>b;
    cout<<"UCLN("<<a<<","<<b<<") = "<<gcd(a,b)<<endl;
    cout<<"BCNN("<<a<<","<<b<<") = "<<(a*b)/gcd(a,b);
    //samon247
    return 0;
}

2)

#include <bits/stdc++.h>
using namespace std;
int giaithua(int n)
{
    int total=1;
    for(int i=1;i<=n;i++){
        total*=i;
    }
    return total;
}
int main(){
    int n;
    cin>>n;
    cout<<giaithua(n);
    //samon247
    return 0;
}

3)

#include <bits/stdc++.h>
using namespace std;
int luythua(double a, double b)
{
    double total=1,c=0;
    for(;c<b;c++){
        total*=a;
    }
    return total;
}
int main(){
    double a,b;
    cin>>a>>b;
    cout<<luythua(a,b);
    //samon247
    return 0;
}

4)

#include <bits/stdc++.h>
using namespace std;
void hoanvi(int &a, int &b)
{
    int temp=a;
    a=b;
    b=temp;
}
int main(){
    int a,b;
    cout<<"a: ";
    cin>>a;
    cout<<"b: ";
    cin>>b;
    hoanvi(a,b);
    cout<<"a: "<<a;
    cout<<"\nb: "<<b;
    //samon247
    return 0;
}

Bạn có biết?

Tin học, tiếng Anh: informatics, tiếng Pháp: informatique, là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng (ảo). Với cách hiểu hiện nay, tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin.

Nguồn : Wikipedia - Bách khoa toàn thư

Tâm sự 10

Lớp 10 - Năm thứ nhất ở cấp trung học phổ thông, năm đầu tiên nên có nhiều bạn bè mới đến từ những nơi xa hơn vì ngôi trường mới lại mỗi lúc lại xa nhà mình hơn. Được biết bên ngoài kia là một thế giới mới to và nhiều điều thú vị, một trang mới đang chò đợi chúng ta.

Nguồn : ADMIN :))

Liên hệ hợp tác hoặc quảng cáo: gmail

Điều khoản dịch vụ

Copyright © 2021 HOCTAPSGK