Tải bản đầy đủ (.doc) (16 trang)

Bai Tap Java cơ bản

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (118.01 KB, 16 trang )

Chuong1:
1. Giải phương trình bậc nhất : ax+b=0
2. Phương trình bậc hai : ax2 + bx + c=0
3. Tìm số trung gian của 3 số a,b,c
4. Viết chương trình tính tiền cho bài toán KaraOke
+ Giờ bắt đầu : a (int)
+ Giờ kết thúc : b (int)
+ Nếu nhỏ hơn 18h : 45000đ/1h, lớn hơn 18h : 60000đ/1h
5. Nhập vào tháng, năm bất kỳ. In ra số ngày tương ứng với tháng, năm đó.
Cấu trúc lặp :
6. Viết chương trình tính :
S=1+1/2+1/3+....+1/n
class myclass
{
public void tinhS(int x)
{
int S=0;
for(int i=1;i<=x;i++)
S+=1/x;
System.out.println(“S = “+S);
}
public static void main(string [] args)
{
myclass dt=new myclass();
dt.tinhS(20);
}
}
7. Viết chương trình tính :
S=15-1+1/2-1/3!+....+(-1)n 1/n!
class myclass
{


public tinhS(int n)
{
int S=15, a=1;
for(int i=1;i{
if(i%2==0) x=1;
else x=-1;
a*=i;
S+=x/a;


}
System.out.println(“S= “+S);
}
public static void main(string [] args)
{
myclass dt=new myclass();
dt.tinhS(20);
}
}
8. Viết chương trình tính :
S=1+1/3!+1/5!+…..+1/(2n-1)!
class myclass
{
public void tinhS(int n)
{
int S=1, a=1;
for(int i=1;i<2n;i+2)
{
S+=1/a;

a*=i*(i+1);
}
System.out.println(“S = “+S);
}
public static void main(string [] args)
{
myclass dt = new myclass();
dt,tinhS(29);
}
}
9. Tính n!! = 1*3*5*…..*n(n lẽ)
= 2*4*6*….*n(n chẵn)
class myclass
{
public tinhN(int n)
{
int N;
for(int i= n%2+2;i<=n;i+=2)
N*=i;
System.out.println(“N!!=”+N);
}
public static void main(string [] args)
{
myclass dt=new myclass();


dt.tinhN(0);
}
}
10. Tính tổng và tích các chữ số của một số nguyên dương m cho trước

(Ví dụ : m=234=> S=2+3+4=9, P=2*3*4=24)
class myclass
{
public void tongvatich(int n)
{
int S, P;
do
{
S+=n%10;
P*=n%10;
n/=10;
}while(n!=0);
System.out.println(“\nTong S=”+S+”\nTich P=”+P);
}
public static void main(string [] args)
{
myclass dt= new myclass();
dt.tongvatich(294);
}
}
11. Nhập một số và kiểm tra có phải nguyên tố không?
12. Kiểm tra số P có phải là số chính phương không?
13. Kiểm tra số M có phải là số đối xứng không?
public class myclass1
{
public void doixung(int so)
{
int x,y,i=0,n,a=0;
x=y=n=so;
String s="";

while(so>0)
{
i++;
so/=10;
}
if(i%2==1)a=1;
for(int j=1;j<=i/2+a;j++)
{
x=x/10;
}


for(int j=1;j<=i/2;j++)
{
s+=y%10;
y/=10;
}
if(x==Integer.parseInt(s))
System.out.println("So "+n+" la so doi xung");
else
System.out.println("So "+n+" la so khong doi xung");
}
public static void main(String s[])
{
myclass1 dt=new myclass1();
dt.doixung(123321);
}
}

14. In ra các số nguyên tố nhỏ hơn hoặc bằng số nguyên dương n cho trước

public class songuyento
{
public boolean nguyento(int n)
{
if(n<2)return false;
if(n==2)return true;
for(int i=2;i<=Math.sqrt(n);i++)
{
if(n%i==0)return false;
}return true;
}
public static void main(String s[])
{
songuyento dt=new songuyento();
for(int i=1;i<=92;i++)
if(dt.nguyento(i))
System.out.println(i);
}
}

15. In ra các số hoàn hảo nhỏ hơn 1000
( Ví dụ : 6=1+2+3, 28=1+2+4+7+14)
public class Sohoanhao {
public boolean shh(int n)
{
int sum=0;
for(int i=1;sum<=n&&i

{

if(n%i==0)sum+=i;
if(sum==n)return true;
}return false;
}
public static void main(String args[])
{
Sohoanhao dt=new Sohoanhao();
for(int i=1;i<1000;i++)
{
if(dt.shh(i))
System.out.println(i);
}
}
}

16. In ra n chữ số Fibonaci đầu tiên
public class Fibonaci {
public int Fibonaci(int n)
{
if(n==1||n==2)return 1;
else return Fibonaci(n-1)+Fibonaci(n-2);
}
public static void main(String s[])
{
Fibonaci dt=new Fibonaci();
for(int i=1;i<=20;i++)
{
System.out.println(dt.Fibonaci(i));
}
}

}

17. Kiểm tra số K có thuộc dãy Fibonaci hay không?
import java.util.*;
public class kiemtraFibonaci {
public int Fibonaci(int n)
{
if(n==1||n==2)return 1;
return Fibonaci(n-1)+Fibonaci(n-2);
}
public static void main(String args[])
{
kiemtraFibonaci dt=new kiemtraFibonaci();
int s=1,K;
Scanner x=new Scanner(System.in);


System.out.println("Nhập K:");
K=x.nextInt();
while(true)
{
if(K==dt.Fibonaci(s))
{
System.out.println(K+" thuộc Fibonaci");
break;
}
if(K{
System.out.println(K+" không thuộc dãy Fibonaci");
break;

}
s++;
}
}
}

18. Tìm ước chung lớn nhất và bội chung nhỏ nhất của 2 số a và b
import java.util.*;
public class UCLN {
public int UCLN(int x,int y)
{
if(x==0||y==0)return 0;
if(x==y)return x;
if(x>y)return UCLN(x-y,y);
return UCLN(x,y-x);
}
public static void main(String args[])
{
UCLN dt=new UCLN();
Scanner x= new Scanner(System.in);
int a,b;
System.out.println("Nhập a: ");
a=x.nextInt();
System.out.println("Nhập b: ");
b=x.nextInt();
System.out.println("Ước Chung lớn nhất : "+dt.UCLN(a,b));
System.out.println("Bội Chung nhỏ nhất : "+a*b/dt.UCLN(a, b));
}
}


4.1 .Giải phưong trình bậc nhất :
import java.awt.*;
import java.awt.event.*;
public class Giaiptbn extends Frame implements ActionListener
{
Label giai, nhapa, nhapb,inkq;
TextField a,b,kq;
Button tinh,reset,thoat;


Panel pn,pn1,pn2,pn3,pn4,pn5;
public void GUI()
{
giai=new Label("Giải Phương Trình Bậc Nhất ax+b=0");
nhapa=new Label("Nhập a");
nhapb=new Label("Nhập b");
inkq=new Label("Kết quả");
a=new TextField("");
b=new TextField("");
kq=new TextField("");
tinh=new Button("Tính");
reset=new Button("Reset");
thoat=new Button("Thoát");
tinh.addActionListener(this);
reset.addActionListener(this);
thoat.addActionListener(this);
pn=new Panel(new GridLayout(5,1));
pn1=new Panel(new FlowLayout());
pn2=new Panel(new GridLayout(1,2));
pn3=new Panel(new GridLayout(1,2));

pn4=new Panel(new GridLayout(1,2));
pn5=new Panel(new GridLayout(1,3));
pn1.add(giai);
pn2.add(nhapa);
pn2.add(a);
pn3.add(nhapb);
pn3.add(b);
pn4.add(inkq);
pn4.add(kq);
pn5.add(tinh);
pn5.add(reset);
pn5.add(thoat);
pn.add(pn1);
pn.add(pn2);
pn.add(pn3);
pn.add(pn4);
pn.add(pn5);
add(pn);
setSize(300,200);
setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
if(e.getSource()==tinh)
{
int x=Integer.parseInt(a.getText());
int y=Integer.parseInt(b.getText());
if(x==0) kq.setText("Phương trình vô nghiệm");
else
{

if(y==0) kq.setText("Phương trình có vô số nghiệm");
else kq.setText(Float.toString((float)-y/x));


}
}
if(e.getSource()==reset)
{
a.setText(" ");
b.setText(" ");
kq.setText(" ");
}
if(e.getSource()==thoat)
{
System.exit(0);
}
}
public Giaiptbn(String st)
{
super(st);
GUI();
}
public static void main(String [] args)
{
new Giaiptbn("GIẢI PHƯƠNG TRÌNH BẬC NHẤT AX+B=0");
}
}

4.2 Minh họa các phép toán :
import java.awt.*;

import java.awt.event.*;
public class Cacpheptoan extends Frame implements ActionListener
{
Label pheptoan,nhapa,nhapb,inkq;
TextField a,b,kq;
Button cong,tru,nhan,chia,thoat,reset,ketqua;
Panel pn,pn1,pn2,pn3,pn4,pn5,pn6;
public void GUI()
{
pheptoan=new Label("Các phép toán");
nhapa=new Label("Nhập a");
nhapb=new Label("Nhập b");
inkq=new Label("Kết quả");
a=new TextField("");
b=new TextField("");
kq=new TextField("");
cong=new Button("Cộng");
tru=new Button("Trừ");
nhan=new Button("Nhân");
chia=new Button("Chia");
reset=new Button("Reset");
thoat=new Button("Exit");
cong.addActionListener(this);
tru.addActionListener(this);


nhan.addActionListener(this);
chia.addActionListener(this);
reset.addActionListener(this);
thoat.addActionListener(this);

pn=new Panel(new GridLayout(6,1));
pn1=new Panel(new GridLayout(1,2));
pn2=new Panel(new GridLayout(1,2));
pn3=new Panel(new GridLayout(1,2));
pn4=new Panel(new GridLayout(1,2));
pn5=new Panel(new FlowLayout());
pn6=new Panel(new FlowLayout());
pn1.add(pheptoan);
pn2.add(nhapa);
pn2.add(a);
pn3.add(nhapb);
pn3.add(b);
pn4.add(inkq);
pn4.add(kq);
pn5.add(cong);
pn5.add(tru);
pn5.add(nhan);
pn5.add(chia);
pn6.add(thoat);
pn6.add(reset);
pn.add(pn1);
pn.add(pn2);
pn.add(pn3);
pn.add(pn4);
pn.add(pn5);
pn.add(pn6);
add(pn);
setSize(500,300);
setVisible(true);
}

public void actionPerformed(ActionEvent e)
{
int x=Integer.parseInt(a.getText());
int y=Integer.parseInt(b.getText());
if(e.getSource()==thoat)
{
System.exit(0);
}
if(e.getSource()==cong)
{
kq.setText(Float.toString((float)x+y));
}
if(e.getSource()==tru)
{
kq.setText(Float.toString((float)x-y));
}
if(e.getSource()==nhan)
{


kq.setText(Float.toString((float)x*y));
}
if(e.getSource()==chia)
{
if(y==0)kq.setText("Vô nghiệm");
else kq.setText(Float.toString((float)x/y));
}
if(e.getSource()==reset)
{
a.setText(" ");

b.setText(" ");
kq.setText(" ");
}
}
public Cacpheptoan(String st)
{
super(st);
GUI();
}
public static void main(String [] args)
{
new Cacpheptoan("Các PHÉP TOÁN");
}
}

4.3 In các số nguyên tố nhỏ hơn hoặc bằng số n cho trước :
import java.awt.*;
import java.awt.event.*;
public class Songuyento extends Frame implements ActionListener
{
Label lb,nhapn,kq;
TextField n,kqua;
Button tim,reset,thoat;
Panel pn,pn1,pn2,pn3,pn4;
public void GUI()
{
lb=new Label("Các số nguyên tố <=n");
nhapn=new Label("Nhập n");
kq=new Label("Kết quả");
n=new TextField("");

kqua=new TextField("");
tim=new Button("Tìm");
reset=new Button("Reset");
thoat=new Button("Exit");
tim.addActionListener(this);
reset.addActionListener(this);
thoat.addActionListener(this);
pn=new Panel(new GridLayout(4,1));
pn1=new Panel(new FlowLayout());
pn2=new Panel(new GridLayout(1,2));
pn3=new Panel(new GridLayout(1,2));
pn4=new Panel(new FlowLayout());


pn1.add(lb);
pn2.add(nhapn);
pn2.add(n);
pn3.add(kq);
pn3.add(kqua);
pn4.add(tim);
pn4.add(reset);
pn4.add(thoat);
pn.add(pn1);
pn.add(pn2);
pn.add(pn3);
pn.add(pn4);
add(pn);
setSize(500,300);
setVisible(true);
}

private int songuyento(int a)
{
for(int i=2;i<=Math.sqrt(a);i++)
{
if(a%i==0) return 0;
}
return 1;
}
public void actionPerformed(ActionEvent e)
{
String s="";
int x=Integer.parseInt(n.getText());
if(e.getSource()==thoat)
{
System.exit(0);
}
if(e.getSource()==tim)
{
if(x<2)kqua.setText("Không có số nguyên tố nào");
else
{
for(int i=2;i<=x;i++)
{
if(songuyento(i)==1) s+=Integer.toString((int)i)+" ";
}
kqua.setText(s);
}
}
if(e.getSource()==reset)
{

n.setText("");
kqua.setText("");
}
}
public Songuyento(String st)
{


super(st);
GUI();
}
public static void main(String []args)
{
new Songuyento("SỐ NGUYÊN TỐ");
}
}

4.4Kiểm tra một số có thuộc dãy Fibonaci hay không?
import java.awt.*;
import java.awt.event.*;
public class Fibonaci extends Frame implements ActionListener
{
Label lb,nhapa,kqua;
TextField a,kq;
Button ok,reset,thoat;
Panel pn,pn1,pn2,pn3,pn4;
public void GUI()
{
lb=new Label("Kiểm tra a có thuộc dãy Fibonaci");
nhapa=new Label("Nhập a");

kqua=new Label("Kết quả");
a=new TextField("",20);
kq=new TextField("",20);
ok=new Button("OK");
reset=new Button("Reset");
thoat=new Button("Exit");
ok.addActionListener(this);
reset.addActionListener(this);
thoat.addActionListener(this);
pn=new Panel(new GridLayout(4,1));
pn1=new Panel(new FlowLayout());
pn2=new Panel(new FlowLayout());
pn3=new Panel(new FlowLayout());
pn4=new Panel(new FlowLayout());
pn1.add(lb);
pn2.add(nhapa);
pn2.add(a);
pn3.add(kqua);
pn3.add(kq);
pn4.add(ok);
pn4.add(reset);
pn4.add(thoat);
pn.add(pn1);
pn.add(pn2);
pn.add(pn3);
pn.add(pn4);
add(pn);
setSize(500,300);



setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
int n=Integer.parseInt(a.getText());
if(e.getSource()==thoat)
{
System.exit(0);
}
if(e.getSource()==reset)
{
a.setText("");
kq.setText("");
}
if(e.getSource()==ok)
{
if(n<1)kq.setText(n+" không thuộc dãy Fibonaci");
else
{
int f,i=1;
do
{
f=fibonaci(i);
if(n==f)
{
kq.setText(n+" thuộc dãy Fibonaci");
break;
}
if(n{

kq.setText(n+" không thuộc dãy Fibonaci");
break;
}
i++;
}while(true);
}
}
}
private int fibonaci(int x)
{
if(x==1||x==2) return 1;
else return fibonaci(x-1)+fibonaci(x-2);
}
public Fibonaci(String st)
{
super(st);
GUI();
}
public static void main(String []args)
{
new Fibonaci("Fibonaci");
}
}


4.5Mô tả máy tính điên tử cá nhân
4.6Đổi màu nền :
‘BaiTap Mang A[n]
import java.util.*;
public class mangA

{
public int tong(int m[],int n)
{
int sum=0;
for(int i=0;i{
if(m[i]%2==1)sum+=m[i];
}return sum;
}
public void timK(int m[],int n,int k)
{
for(int i=0;i{
if(m[i]==k)
{
System.out.println("Vi tri cua "+k+" la: "+(i+1));
break;
}
}
}
public void sapxep(int m[],int n)
{
int tam;
for(int i=0;ifor(int j=i;jif(m[i]>m[j])
{
tam=m[i];
m[i]=m[j];
m[j]=tam;

}
System.out.println("Mang A[]");
for(int i=0;iSystem.out.println("A["+(i+1)+"] = "+m[i]);
}
public void chen(int m[], int n,int p)
{
m[n]=p;n++;
sapxep(m,n);
}
public static void main(String args[])
{
mangA dt=new mangA();
Scanner x=new Scanner(System.in);
int n,A[]=new int[100],k,p;


System.out.println("Nhap chiu dai mang: n = ");
n=x.nextInt();
for(int i=0;i{
System.out.println("A["+(i+1)+"] = ");
A[i]=x.nextInt();
}
System.out.println("Tong cac so le trong mang = "+dt.tong(A,n));
System.out.println("Nhap so can tim: ");
k=x.nextInt();
dt.timK(A, n, k);
dt.sapxep(A, n);
System.out.println("Nhap so can chen: ");

p=x.nextInt();
dt.chen(A, n, p);
}
}
Mang B[m][n]
import java.util.*;
public class mangB
{
static int B[][]=new int[100][100],X[]=new int[100],n,m;
public void tich()
{
int t=1;
for(int i=0;i{
if(B[0][i]%3==0)t*=B[0][i];
}
if(t==1)System.out.println("Khong co so bo ba nao");
else System.out.println("Tich cac so bo ba: "+t);
}
public void mang1chieu()
{
for(int i=0;iX[i]=B[0][i];
for(int i=0;ifor(int j=0;j{
if(X[i]X[i]=B[j][i];
}
for(int i=0;i

System.out.println("X["+(i+1)+"] = "+X[i]);
}
public void xoasole()
{
for(int i=0;iif(X[i]%2==1)
{
n--;


for(int j=i;jX[j]=X[j+1];
break;
}
for(int i=0;iSystem.out.println("X["+(i+1)+"] = "+X[i]);
}
public void sapxep()
{
int tam;
for(int i=0;ifor(int j=i;j{
if(X[i]{
tam=X[i];
X[i]=X[j];
X[j]=tam;
}
}

for(int i=0;iSystem.out.println("X["+(i+1)+"] = "+X[i]);
}
public static void main(String args[])
{
mangB dt= new mangB();
Scanner y=new Scanner(System.in);
System.out.println("Nhap m,n: ");
m=y.nextInt();
n=y.nextInt();
System.out.println("Nhap mang B[][]");
for(int i=0;ifor(int j=0;j{
System.out.println("B["+(i+1)+"]["+(j+1)+"] = ");
B[i][j]=y.nextInt();
}
dt.tich();
dt.mang1chieu();
dt.xoasole();
dt.sapxep();
}
}



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×