Chuyển đến nội dung chính

Bài đăng

Đang hiển thị bài đăng từ tháng một, 2014

[Java] Ví dụ Giải phương trình bậc 2 sử dụng Java G.U.I [Java GUI - Giao diện đồ họa trong Java]

Xây dựng Project Giải phương trình bậc 2 (ax^2 + bx +c =0) sử dụng GUI.

Thực hiện:
1. Xây dựng Project như hình vẽ

Trong đó:
 + class GPTB2_GUI: Chứa thiết kế giao diện và phương thức chính
 + class GPTB2: Giải và biện luận phương trình bậc 2

2. Thiết kế giao diện (code thiết kế trong class GPTB2_GUI)



3. Java Code
+ class GPTB2_GUI -----------------------------------------------------

package gptb2_gui;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.*;

public class GPTB2_GUI  extends JFrame {
private static final long serialVersionUID = 1L;

public GPTB2_GUI(String title)
{
    setTitle(title);
}
// Hiển thị
public void doShow()
{
    setSize(400, 300);
    setLocationRelativeTo(null);
    setDefaultCloseOperation(EXIT_ON_CLOSE);
    addControl();
    setResizable(false);
    setVisible(true);
}

// Thiết kế giao diện
public void addControl()
{
    JPanel pnBorder=new JPanel();
    pnBorder.setLayout(new BorderLayout());
    // tiêu đề
    JPanel pnNorth=new JPanel();
    …

[Algorithms] Phân tích độ phức tạp về thời gian của thuật toán [Thời gian thực hiện thuật toán]

Thông thường khi tính toán độ phức tạp của một thuật giải thì thời gian thực hiện là khía cạnh quan trọng của một giải thuật. Việc chọn một giải thuật đưa đến kết quả nhanh nhất là một đòi hỏi thực tế. Thời gian thực hiện giải thuật bằng chương trình máy tính phụ thuộc vào rất nhiều yếu tố. Bài viết này sẽ giúp các bạn biết một số khái niệm các các phân tích, đánh giá độ phức tạp của một thuật toán.

1. Giới thiệu (Introduction)

- Như chúng ta được biết thì thời gian thực hiện của giải thuật phụ thuộc vào rất nhiều yếu tố. Trong đó yếu tố cần chú ý nhất là kích thước của dữ liệu đưa vào. Dữ liệu càng lớn thì thời gian xử lý càng chậm. Chẳng hạn như thời gian sắp xếp một dãy số phải chịu ảnh hưởng của các số thuộc dãy số đó. Nếu gọi n là kích thước dữ liệu đưa vào thì thời gian thực hiện của giải thuật có thể biểu diễn một cách tương đối như một hàm của n: T(n).



- Phần cứng máy tính, ngôn ngữ viết chương trình và chương trình dịch ngôn ngữ ấy đều ảnh hưởng tới thời gian thực hiện. Nhữ…

[Ngôn ngữ lập trình] 8 ngôn ngữ lập trình được chú ý đặc biệt

Thế giới của các ngôn ngữ lập trình (NNLT) đa dạng và có chiều sâu, mỗi NNLT có ưu thế ở từng mảng như Pascal, C, C++, Java, C#, ... về lập trình hệ thống, PHP, .Net dành cho Web, SQL, Oracle dành cho cơ sở dữ liệu… Đôi khi, các lập trình viên sẽ hướng đến ngôn ngữ C++ hay các ngôn ngữ thông dụng khác để lập trình các trò chơi đòi hỏi tác vụ hiệu suất cao.

- Sự nở rộ của các nền tảng và ứng dụng mới chuyển từ máy tính để bàn sang thiết bị di động và ứng dụng đám mây hay Web. Nhiều NNLT mới đã thúc đẩy sự xuất hiện của Python, Ruby, CUDA… để giúp lập trình viên (LTV) dễ dàng hơn trong việc phát triển ứng dụng. Dần dần, các ngôn ngữ mới đã có nhiều cải thiện đáng kể khi các hàm, dòng lệnh… đến gần với ngôn ngữ tự nhiên của con người hơn. Vì vậy, để có thể bắt kịp với xu hướng phát triển phần mềm, các lập trình viên phải tìm hiểu NNLT mới vừa theo đuổi niềm đam mê vừa có được vị trí công việc tốt hơn cho tương lai. Bên cạnh đó, các công ty phần mềm cũng phải chọn lựa hướng tiếp cận ngôn…

[Java] Ví dụ về lớp trừu tượng và phương thức trừu tượng (abstract) - Tính chu vi, diện tích các hình cơ bản [Lập trình hướng đối tượng - OOP]

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

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

2. Code:
//-------------------------------------------
//abstract class HinhHoc
//-------------------------------------------
package vd_abstract_150114;
public abstract class HinhHoc {
    String tenHinh;
    // Constructor
    public HinhHoc(String tenHinh){
        this.tenHinh=tenHinh;
    }
    // Tinh chu vi
    abstract float ChuVi();
    // Tinh dien tich
    abstract float DienTich();
    // In ket qua
    void InKQ(){
        System.out.print("\n + Ten hinh: "+ tenHinh);
        System.out.print("\n  - Chu vi: "+ ChuVi());
        System.out.print("\n  - Dien tich: "+ DienTich());
    }
}

//-------------------------------------------
// class HinhVuong
//-------------------------------------------

package vd_abstract_150114;
public class HinhVuong extends HinhHoc{
    float a;
    // constructor
    public HinhVuong(String tenHinh,float a){
        super(tenHinh);
        this.a=a;
    }
  …