1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài tập lập trình c++

72 1,9K 7
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 72
Dung lượng 523,5 KB

Nội dung

Bài 1. Viết chương trình nhập từ bàn phím n số nguyên dương nhỏ hơn 100, in ra màn hình hai cột song song, một cột là các số, còn cột kia là tổng của các chữ số tương ứng ở cột thứ nhất. Tìm và in ra số có tổng của các chữ số là lớn nhất, nếu có nhiều hơn một số như vậy thì in số đầu tiên. Bài 2. Một người gửi tiết kiệm a đồng với lãi suất s% một tháng (tính lãi hàng tháng). Việt một chương trình tính và in ra màn hình hai cột song song, cột thứ nhất là số tháng đã gửi, cột thứ hai tổng số tiền (cả vốn và lãi) ứng với số tháng ở cột thứ nhất cho một khoảng thời gian từ 1 đến t tháng, với a, s, t được nhập từ bàn phím. Bài 3. Một người gửi tiết kiệm à đồng với lãi suất là s% một tháng trong kỳ hạn 6 tháng (6 tháng tính lãi một lần). Viết chương trình tính và in ra màn hình hai cột song song, cột thứ nhất là số tháng đã gửi, cột thứ hai là tổng tiền (cả vốn và lãi) ứng với số tháng ở cột thứ nhất cho một khoảng thời gian từ 6 tháng đến t tháng, với a, s, và t được nhập từ bàn phím. (Biết rằng nếu lĩnh không chắn kỳ nào thì không được tính lãi kỳ ấy).

Trang 1

Bài 1 Viết chương trình nhập từ bàn phím n số nguyên dương nhỏ hơn 100, in ra màn hình hai

cột song song, một cột là các số, còn cột kia là tổng của các chữ số tương ứng ở cột thứ nhất Tìm và in ra số có tổng của các chữ số là lớn nhất, nếu có nhiều hơn một số như vậy thì in số đầu tiên.

Bài 2 Một người gửi tiết kiệm a đồng với lãi suất s% một tháng (tính lãi hàng tháng) Việt một

chương trình tính và in ra màn hình hai cột song song, cột thứ nhất là số tháng đã gửi, cột thứ hai tổng số tiền (cả vốn và lãi) ứng với số tháng ở cột thứ nhất cho một khoảng thời gian từ 1 đến t tháng, với a, s, t được nhập từ bàn phím.

Bài 3 Một người gửi tiết kiệm à đồng với lãi suất là s% một tháng trong kỳ hạn 6 tháng (6 tháng

tính lãi một lần) Viết chương trình tính và in ra màn hình hai cột song song, cột thứ nhất là số tháng đã gửi, cột thứ hai là tổng tiền (cả vốn và lãi) ứng với số tháng ở cột thứ nhất cho một khoảng thời gian từ 6 tháng đến t tháng, với a, s, và t được nhập từ bàn phím (Biết rằng nếu lĩnh không chắn kỳ nào thì không được tính lãi kỳ ấy).

Bài 4 Cho x là một số thực, hãy xây dựng hàm tính và in ra màn hình hai cột song song, cột thứ

nhất là giá trị của đối số, cột thứ hai là giá trị của hàm f ứng với đối số ở cột thứ nhất:

Sau đó, viết một chương trình nhạp từ bán phím một mảng gồm n số thực, và gọi hàm đã lập được ở trên với đối số là các số vừa nhập.

Bài 5 Viết chương trình tính và in ra màn hình số tiền điện tháng 10/99 của n khách hàng theo

các chỉ số trên đồng hồ điện của tháng 9 và của tháng 10 được nhập vào từ bàn phím (phải kiểm tra để đảm bảo rằng chỉ số của tháng sau phải lớn hơn chỉ số của các tháng trước).

Biết rằng: 50 số đầu tiền giá 500 đồng/số, 100 số tiếp theo giá 800 đồng/số, 100 số tiếp theo nữa giá 1000 đồng/số, 100 số tiếp theo nữa giá 1200 đồng/số, và từ số thứ 351 trở đi giá 1500

đồng/số

Bài 6 Viết một chương trình nhập vào từ bàn phím điểm kiểm tra của một môn học của n học

sinh và in kết quả ra màn hình dưới dạng hai cột song song, một cột là điểm và cột thứ hai là xếp loại theo điểm với các qui định sau:

Dưới 5: Yếu

Từ 5 đến dưới 7: Trung bình

Từ 7 đến dưới 9: Khá

Từ 9 trở lên: Giỏi

Bài 7 Viết chương trình giải phương trình bậc hai ax2+bx+c=0 với a, b, c bất kỳ được nhập vào

từ bàn phím In ra màn hình phương trình bậc hai với các hệ số đã nhập, giá trị của delta và các nghiệm thức của nó (nếu cố), ngươcij lại thì in là không có nghiệm thực.

Bài 8 Năm 1999, dân số nước ta là 76 triệu người, tỷ lệ tăng tự nhiên là k% một năm Lập một

chương trình in ra màn hình hai cột song song, cột thứ nhất là năm, cột thứ hai là dân số của năm tương ứng ở cột một cho đến khi dân số tăng s lần so với năm 1999 Các số k và s được nhập vào

Trang 2

từ bàn phím.

Bài 9 Viết chương trình giải bất phương trình bận hai với a, b, c bất kỳ được nhập từ bàn phím:

ax2+bx+c>0 In ra màn hình bất phương trình với các hệ số đã nhập, giá trị của delta và các nghiệm thực của bất phương trình.

Bài 10 Xây dựng một hàm sắp xếp thep thứ tự tăng dần một mảng gồm n số thực Viết chương

trình để nhập n số thực từ bàn phím, sử dụng hàm sắp xếp nói trên, và in ra màn hình hai cột song song, một cột là mảng chưa sắp xếp, một cột là mảng đã được sắp xếp.

Bài 11 Xây dựng một hàm sắp xếp thep thứ tự giảm dần một mảng gồm n số thực Viết chương

trình để nhập n số thực từ bàn phím, sử dụng hàm sắp xếp nói trên, và in ra màn hình hai cột song song, một cột là mảng chưa sắp xếp, một cột là mảng đã được sắp xếp.

Bài 12 Cho F là một số thực lớn hơn 2, và S=1/2+1/3+…+1/n Hãy xây dựng một hàm để tìm

giá trị lớn nhất của n sao cho S<=F Viết một chương trình để nhập vào từ bàn phím m số thực

Fi, sử dụng hàm nói trên đối với các hàm Fi đã nhập và in ra màn hình thành ba cột song song: các giá trị của Fi, n, và S tương ứng.

Bài 13 Cho F là một số thực lớn hơn 2, và S=1/2+1/3+…+1/n Hãy xây dựng một hàm để tìm

giá trị nhỏ nhất của n sao cho S<=F Viết một chương trình để nhập vào từ bàn phím m số thực

Fi, sử dụng hàm nói trên đối với các hàm Fi đã nhập và in ra màn hình thành ba cột song song: các giá trị của Fi, n, và S tương ứng.

Bài 14 Xây dựng một hàm tính giá trị trung bình của n số thực (Giá trị trung bình của một dãy

số được cho bằng công thức: )

Sử dụng hàm nói trên để viết chương trình nhập n số thực từ bàn phím và in ra màn hình cột số

đã nhập, tổng, giá trị trung bình của chúng.

Bài 15 Xây dựng một hàm tính giá trị trung bình của n số thực (Độ lêcnh chuẩn của dãy số

được cho bằng công thức: , với )

Sử dụng hàm nói trên để viết chương trình nhập n số thực từ bàn phím và in ra màn hình cột số

đã nhập, tổng, giá trị trung bình và độ lệch chuẩn của chúng.

Bài 16 Hãy xây dựng một hàm để nhập từ bàn phím một mảng số thực Viết một chương trình

sử dụng hàm đã xây dựng được ở trên để nhập số liệu cho hai mảng số thực, một mảng có n phẩn tử, và một mảng có m phần tử, in ra màn hình hai cột song song, mỗi cột là một mảng với ô cuối cùng là tổng của các phần tử trong mảng, và cuỗi cùng là tổng của hai mảng.

Bài 17 Hãy xây dựng một hàm để nhập từ bàn phím một mảng số thực Viết một chương trình

sử dụng hàm đã xây dựng được ở trên để nhập số liệu cho hai mảng số thực, một mảng có n phẩn tử, và một mảng có m phần tử, in ra màn hình ba cột song song, hai cột đầu là hai mảng đã nhập, cột thứ ba tổng của hai cột đầu, dòng cuỗi cùng của cả ba cột là tổng của các phần tử trong cột.

Bài 18 Cho tuổi và số con của n phụ nữ trong độ tuổi 15-49, hãy xây dựng một hàm tính và in

Trang 3

bản phân bố của các phụ nữ này theo nhóm 5 tuổi Viết chương trình để nhập tuổi và số con của

n phụ nữ trong độ tuổi 15-49, sau đó sử dụng hàm đã xây dựng ở trên để in bảng phân bố theo tuổi.

Bài 19 Cho tuổi và số con của n phụ nữ trong độ tuổi 15-49, hãy xây dựng một hàm tính và in

bản phân bố của các phụ nữ này theo nhóm 5 tuổi Viết chương trình để nhập tuổi và số con của

n phụ nữ trogn độ tuổi 15-49, sau đó sử dụng hàm đã xây dựng ở trên để in bảng phân bố số con

của các phụ nữ này theo tuổi.

Bài 20 Cho một xây bất kỳ, không sử dụng các hàm thư viện về xâu, hãy xây dựng một hàm đổi

tất cả các chữ thường thành chữ hoa (các ký tự khác giữ nguyên) và in cả hai ra màn hình Viết

một chương trình nhập một xây bất kỳ từ bàn phím, sau đó sử dụng hàm đã xây dựng ở trên để

in kết quả ra màn hình.

Bài 21 Cho một xây bất kỳ, không sử dụng các hàm thư viện về xâu, hãy xây dựng một hàm đổi

tất cả các chữ hoa thành chữ thường (các ký tự khác giữ nguyên) và in cả hai ra màn hình Viết

một chương trình nhập một xây bất kỳ từ bàn phím, sau đó sử dụng hàm đã xây dựng ở trên để

in kết quả ra màn hình.

Bài 22 Cho một xây bất kỳ, không sử dụng cac shamf thư viện về xâu, hãy xây dựng một hàm

đổi tất cả các chữ hoa của xây thành chữ thường, và ngược lại, đổi các chữ thường của xâu thành chữ hoa (các chữ khác giữ nguyên) và in cả hai ra màn hình Viết một chương trình nhập

một xâu bất kỳ từ bàn phím, sau đó sử dụng hàm đã xây dựng ở trên đê in kết quả ra màn hình.

Bài 23 Cho cấu trúc:

Code:

struc thisinh{

char hoten[25]; //Họ và tên

float m1,m2,m3l //Điểm ba môn thi

} danhsach[100];

Hãy xây dựng một hàm để nhập số liệu cho n thí sinh Sau đó viết một chương trình sử dụng hàm nói trên để nhập số liệu và in bảng điểm của các thí sinh này theo dạng ba cột: Số báo danh,

Họ tên, Tổng điểm.

Bài 24 Cho một xây bất, hãy xây dựng một hàm để sửa các lỗi chính tả không viết hoa đầu câu

trong xâu này, in ra xâu chưa sửa và xâu đã sửa Sau đó viết một chương trình để nhập một xâu

và sử dụng hàm nói trên để sửa lỗi.

Bài 25 Cho cấu trúc:

Code:

struc dienthoai{

Trang 4

float sotien; //Số tiền phải nộp

} thuebao[100];

Hãy xây dựng một hàm để nhập số liệu cho n thuê bao Sau đó viết một chương trình sử dụng hàm nói trên để nhập số liệu và in bảng số tiền phải nộp của các thuê bao theo dạng ba cột: Họ tên, số điện thoại, số tiền phải nộp.

Bài 26 Hãy xây dựng một hàm in ra màn hình nội dung một tệp văn bản bất kỳ (có dựng lại sau

mỗi trang màn hình) Sau đó, viết một chương trình để nhập vào từ bàn phím tên của một tệp văn bản và sử dụng hàm nói trên để in nội dung của tệp này ra màn hình.

Bài 27 Cho tuổi và trình độ văn hóa (0-4) của n người, hãy xây dựng một hàm in bản phân bố

của số người này theo nhóm 5 tuổi và trình độ văn hóa Sau đó, viết một chương trình để nhập tuổi và trình độ văn hóa của n người, sử dụng hàm nói trên để in kết quả ra màn hình.

Bài 28 Viết một chương trình để nhập tuổi và trình độ văn hóa (0-4) của n người, sau đó ghi các

số liệu này lên một tệp mode văn bản.

Bài 29 Cho một xâu bất kỳ, hãy xây dựng một hàm để sửa các lỗi chính tả không có dấu cách sau dấu phảy và sau dấu chấm, in ra màn hình xâu chưa sửa và xâu đã sửa Sau đó viết chương

trình để nhập một xâu bất kỳ và sử dụng hàm nói trên để sửa lỗi.

Bài 30 Cho một xâu bất kỳ, hãy xây dựng một hàm để sửa các lỗi chính tả không có dấu cách giữa các từ, in ra xâu gốc và xâu đã sửa Sau đó viết một chương trình để nhập một xâu ký tự

bất kỳ và sử dụng hàm nói trên để sửa lỗi.

Bài 31 Cho một xâu bất kỳ, hãy xây dựng một hàm để viết hoa chữ cái đầu tiên của tất cả các

từ trong xâu đã cho, in ra xâu gốc và xâu đã sửa Sau đó viết một chương trình để nhập một xâu

ký tự bất kỳ và sử dụng hàm nói trên để sửa lỗi.

Bài 32 Cho cấu trúc:

Code:

struc tiendien{

char hoten[25]; //Họ và tên

float csc,csm; //Chỉ số cũ, chỉ số mới

float tong; //Tổng tiền phải nộp

} danhsach[100];

Hãy xây dựng một hàm để nhập số liệu cho n hộ sử dụng điện Sau đó, viết một chương trình sử dụng hàm nói trên để nhập số liệu và in bảng tính tiền sử dụng điện thoại của các hộ này theo dạng hai cột: Họ tên, số điện tiêu thụ, Tổng số tiền.

Bài 33 Hãy xây dựng một hàm để nhập từ bàn phím một mảng các số thực Viết chưng trình sử

dụng hàm nói trên để nhập số liệu cho hai mảng số thực cùng có n phần tử, in ra màn hình ba cột song song, hai cột đầu là hai mảng đã nhập, còn cột thứ ba là hiệu của hai cột đầu, dòng cuối cùng của cả ba cột là tỏng của các phần tử trong cột.

Trang 5

Bài 34 Cho F là một số thực lớn hơn 2, và , với x là một số nguyên dương bất kỳ Hãy xây

dựng một hàm để tìm giá trị lớn nhất của n sao cho S<=F, in ra màn hình các giá trị của x, F, S

và n Viết một chương trình để nhập vào từ bàn phím số thực F, số nguyên dương x và sử dụng hàm nói trên đối với các giá trị đã nhập để in kết quả ra màn hình.

Bài 35 Cho F là một số thực lớn hơn 2, và , với x là một số nguyên dương bất kỳ Hãy xây

dựng một hàm để tìm giá trị nhỏ nhất của n sao cho S<=F, in ra màn hình các giá trị của x, F, S

và n Viết một chương trình để nhập vào từ bàn phím số thực F, số nguyên dương x và sử dụng hàm nói trên đối với các giá trị đã nhập để in kết quả ra màn hình.

Bài 36 Hãy xây dựng một hàm để nhập từ bán phím một mảng cac số thực Viết chương trình sử

dụng hàm nói trên để nhập số liệu cho hai mảng số thực cùng có n phần tử, in ra màn hình ba cột song song, hai cột đầu là hai mảng đã nhập, cột thứ ba là tích của hai cột đầu, dòng cuỗi cùng của cả ba cột là tổng các phần tử trong cột.

Bài 37 Viết một chương trình để nhập số báo danh, họ tên và điểm thi ba môn Toán, Lý, Hóa

của n thí sinh, sau đó ghi các số liệu này lên một tệp ở mode văn bản.

Bài 38 Hãy xây dựng một hàm in ra mnaf hình nội dung của một tệp văn bản bất kỳ theo dạng

trang màn hình có đánh số trang Sau đó, viết một chương trình để nhập từ bàn phím tên của một tệp văn bản và sử dụng hàm nói trên để in nội dung của tệp này ra màn hình.

Bài 39 Hãy xây dựng một hàm in ra mnafh ình nội dung của một tệp văn bản bất kỳ theo dạng

trang màn hình, ở dòng đầu của mỗi trang có đánh số trang ở góc bên phải và tên tệp góc trái Sau đó, viết một chương trình để nhập từ bàn phím tên của một tệp văn bản và sử dụng hàm nói trên để in nội dung của tệp này ra màn hình.

Bài 40 Cho cấu trúc

Code:

struc thisinh{

char hoten[25]; //Họ và tên

float m1,m2,m3l //Điểm ba môn thi

} danhsach[100];

Viết chương trình (có sử dụng các hàm) để thêm và bớt các thí sinh theo thứ tự giảm dần của tổng điểm, và in ra mnaf hình danh sách đã sắp.

Trang 6

tuananhk43

Bài 1 Viết chương trình nhập từ bàn phím n số nguyên dương nhỏ hơn 100, in ra màn hình hai

cột song song, một cột là các số, còn cột kia là tổng của các chữ số tương ứng ở cột thứ nhất Tìm và in ra số có tổng của các chữ số là lớn nhất, nếu có nhiều hơn một số như vậy thì in số đầu tiên.

Code:

#include <iostream.h>

#include<conio.h>

#include<iomanip.h>

//Ham tinh tong cac chu so

//Vd n=15 thi tra ve gia tri la 6

//Ham nhap cac gia tri cho mot mang

void nhap(int *a,int n){

for (int i=0;i<n;i++){

cout<<"Nhap a["<<i<<"]=";

cin>>a[i];

}

}

//Ham in cac gia tri thanh hai cot

void in(int *a,int n){

int tong1=0, tong2=0;

int max; //Dung de tinh gia tri lon nhat cua tong

Trang 7

Đáp án Bài 2 Một người gửi tiết kiệm a đồng với lãi suất s% một tháng (tính lãi hàng tháng)

Việt một chương trình tính và in ra màn hình hai cột song song, cột thứ nhất là số tháng đã gửi, cột thứ hai tổng số tiền (cả vốn và lãi) ứng với số tháng ở cột thứ nhất cho một khoảng thời gian

cout<<"nhap so tien gui ban dau: "; cin>>a;

cout<<"nhap lai suat hang thang: "; cin>>s;

cout<<"nhap so thang tiet kiem : "; cin>>t;

khi nhập lãi xuất, nếu lãi xuất là 0,7 % / tháng thì hãy nhập 0.7 (chứ không phải nhập là 0.007)

khi đó sau mỗi tháng tiền lãi và vốn sẽ = tiền tháng trước + tiền tháng trước x lãi suất

đó chính là công thức trên: kq *= (1 + s/100)

Bài 3 Một người gửi tiết kiệm à đồng với lãi suất là s% một tháng trong kỳ hạn 6 tháng (6 tháng

tính lãi một lần) Viết chương trình tính và in ra màn hình hai cột song song, cột thứ nhất là số tháng đã gửi, cột thứ hai là tổng tiền (cả vốn và lãi) ứng với số tháng ở cột thứ nhất cho một khoảng thời gian từ 6 tháng đến t tháng, với a, s, và t được nhập từ bàn phím (Biết rằng nếu lĩnh không chắn kỳ nào thì không được tính lãi kỳ ấy).

cout<<"nhap so tien gui ban dau: "; cin>>a;

cout<<"nhap lai suat hang thang: "; cin>>s;

cout<<"nhap so thang tiet kiem : "; cin>>t;

kq = a;

Trang 8

<<"|"<<endl;

}

cout<<"+ -+ -+"<<endl;

}

bài này giống bài 2, chú ý tính lãi sau mỗi 6 tháng

Đáp án Bài 4 Cho x là một số thực, hãy xây dựng hàm tính và in ra màn hình hai cột song song,

cột thứ nhất là giá trị của đối số, cột thứ hai là giá trị của hàm f ứng với đối số ở cột thứ nhất:

Sau đó, viết một chương trình nhạp từ bán phím một mảng gồm n số thực, và gọi hàm đã lập được ở trên với đối số là các số vừa nhập.

Code:

#include <iostream.h>

#include <iomanip.h>

#include <math.h>

const float PI=4.1415;

//Ham nhap mang cac so thuc

void nhapMang(float *a,char *name, int n){

for (int i=0; i<n;i++)

Trang 9

cout<<"Nhap so phan tu N="; cin>>n;

//Goi ham nhap mang

nhapMang(a,"a",n);

//Dinh dang hien thi so thuc

cout<<setiosflags(ios::showpoint|ios::fixed);

cout<<setprecision(2);

//In gia tri cua mang tuong ung voi gia tri ham F(X)

//Hien thi hai cot song song

Bài 5 Viết chương trình tính và in ra màn hình số tiền điện tháng 10/99 của n khách hàng theo

các chỉ số trên đồng hồ điện của tháng 9 và của tháng 10 được nhập vào từ bàn phím (phải kiểm tra để đảm bảo rằng chỉ số của tháng sau phải lớn hơn chỉ số của các tháng trước).

Biết rằng: 50 số đầu tiền giá 500 đồng/số, 100 số tiếp theo giá 800 đồng/số, 100 số tiếp theo nữa giá 1000 đồng/số, 100 số tiếp theo nữa giá 1200 đồng/số, và từ số thứ 351 trở đi giá 1500 đồng/số.

Sửa đầu bài 1 tý cho đơn giản: nhập số lượng điện tiêu thụ, tính số tiền phải trả theo đơn giá

trên (chưa có thuế VAT), VAT =10%

Trang 10

Giờ nếu nhập 2 chỉ số thì trừ nó đi cho nhau thì sẽ ra lượng điện tiêu thụ

động tác kiểm tra số sau lớn hơn số trước thiết nghĩ rất đơn giản, để các bạn sv tự làm

Khi học đến phần mảng, chúng ta sẽ nhập số người tương ứng là số phần tử của mảng, sau đó vận dụng bài này để tính tiền điện cho từng người (từng giá trị trong mảng)

chú ý: t là số tiền phải trả, t*1.1 là số tiền đã có thuế 10%

Bài 7 Viết chương trình giải phương trình bậc hai ax2+bx+c=0 với a, b, c bất kỳ được nhập vào

từ bàn phím In ra màn hình phương trình bậc hai với các hệ số đã nhập, giá trị của delta và các nghiệm thức của nó (nếu cố), ngươcij lại thì in là không có nghiệm thực.

chú ý: nếu a=0 thì sẽ thành pt bậc nhất, nên tiện đây đưa luôn bài gpt b1

Trang 11

x1=(-b-sqrt(d))/(2*a);

x1=(-b+sqrt(d))/(2*a);

cout<<"pt co 2 nghiem thuc"<<endl

<<"nghiem thuc 1="<<x1<<endl

<<"nghiem thuc 2="<<x2;

}

else{

cout<<"pt k co nghiem thuc"<<endl

<<"pt co 2 nghiem phuc lien hop"<<endl;

Bài 8 Năm 1999, dân số nước ta là 76 triệu người, tỷ lệ tăng tự nhiên là k% một năm Lập

một chương trình in ra màn hình hai cột song song, cột thứ nhất là năm, cột thứ hai là dân số của năm tương ứng ở cột một cho đến khi dân số tăng s lần so với năm 1999 Các số k và s được nhập vào từ bàn phím.

int k; //% tang dan so hang nam

float s;//So lan tang

cout<<"Nhap % tang K="; cin>>k;

cout<<"Nhap so lan tang S="; cin>>s;

Trang 12

Bài 10 Xây dựng một hàm sắp xếp theo thứ tự tăng dần một mảng gồm n số thực Viết

chương trình để nhập n số thực từ bàn phím, sử dụng hàm sắp xếp nói trên, và in ra màn hình hai cột song song, một cột là mảng chưa sắp xếp, một cột là mảng đã được sắp xếp.

cout<<setw(20)<<"Mang chua sap xep";

cout<<setw(20)<<"Mang da sap xep";

Trang 13

Bài 11 Xây dựng một hàm sắp xếp thep thứ tự giảm dần một mảng gồm n số thực Viết

chương trình để nhập n số thực từ bàn phím, sử dụng hàm sắp xếp nói trên, và in ra màn hình hai cột song song, một cột là mảng chưa sắp xếp, một cột là mảng đã được sắp xếp.

cout<<setw(20)<<"Mang chua sap xep";

cout<<setw(20)<<"Mang da sap xep";

Trang 14

Bài 12 Cho F là một số thực lớn hơn 2, và S=1/2+1/3+…+1/n Hãy xây dựng một hàm để

tìm giá trị lớn nhất của n sao cho S<=F Viết một chương trình để nhập vào từ bàn phím m số thực Fi, sử dụng hàm nói trên đối với các hàm Fi đã nhập và in ra màn hình thành ba cột song song: các giá trị của Fi, n, và S tương ứng.

Trang 15

#include <iostream.h> //khai bao thu vien su dung luong nhap xuat

#include <iomanip.h> //thu vien dinh dang nhap xuat

#include <math.h> //thu vien cac ham toan hoc

#include <conio.h> //thu vien cung cap cac ham ve man hinh, ban phim

void NhapMang(float a[], int n){

cout << "Nhap mang" << endl; //thong bao qua trinh nhap bat dau

for (int i = 0; i < n ; i++){ //vong lap duyet tu chi so 0 den n-1

cout << "a[" << i << "] = "; //moi lan: thong bao phan tu sap duoc nhap

cin >> a[i]; //nhap gia tri tu ban phim cho phan tuthu i

} //ket thuc vong lap

void InMang(float a[], int n){

//Thiet lap dinh dang

cout << setiosflags(ios::showpoint|ios::fixed);

cout << setprecision(2);

//in tung phan tu cua mang, cach nhau boi dau cach (space)

for (int i = 0; i < n; i++)cout << a[i] << " ";

cout << endl;

}

void SapXep(float a[], int n){

//Sap xep giam dan

float a[100]; //khai bao bien mang a co 100 phan tu số thực

mang

Trang 16

cout << "Nhap N = "; //thong bao cho nguoi dung nhap so luong

cin >> n; //nhap gia tri cho bien n tu ban phim

NhapMang(a,n); //nhap n gia tri cho tung phan tu cua mang

cout << "Mang truoc khi sap xep:"<<endl;

cout << "Mang sau khi sap xep:"<<endl;

void SapXep(float a[], int n){

//Sap xep tăng dần

void SapXep(float a[], int n){

//Sap xep tăng dần

Ta làm bài trên theo cách đưa quá trình nhập số lượng phần tử vào trong hàm nhập bằng cách

khai báo đối số của hàm nhập: đối số n là tham chiếu

Code:

#include <iostream.h> //khai bao thu vien su dung luong nhap xuat

#include <iomanip.h> //thu vien dinh dang nhap xuat

#include <math.h> //thu vien cac ham toan hoc

#include <conio.h> //thu vien cung cap cac ham ve man hinh, ban phim

Trang 17

void NhapMang(float a[], int &n){ // n là tham chiếu

cout << "Nhap N = "; //thong bao cho nguoi dung nhap so luong

cin >> n; //nhap gia tri cho bien n tu ban phim

cout << "Nhap mang" << endl; //thong bao qua trinh nhap bat dau

for (int i = 0; i < n ; i++){ //vong lap duyet tu chi so 0 den n-1

cout << "a[" << i << "] = "; //moi lan: thong bao phan tu sap duoc nhap

cin >> a[i]; //nhap gia tri tu ban phim cho phan tuthu i

} //ket thuc vong lap

void InMang(float a[], int n){

//Thiet lap dinh dang

cout << setiosflags(ios::showpoint|ios::fixed);

cout << setprecision(2);

//in tung phan tu cua mang, cach nhau boi dau cach (space)

for (int i = 0; i < n; i++)cout << a[i] << " ";

cout << endl;

}

void SapXep(float a[], int n){

//Sap xep giam dan

float a[100]; //khai bao bien mang a co 100 phan tu số thực

mang

NhapMang(a,n); //nhap số lượng n và gia tri cho tung phan tu cua mang

cout << "Mang truoc khi sap xep:"<<endl;

cout << "Mang sau khi sap xep:"<<endl;

}

Đề bài: Viết hàm nhập n phần tử số thực từ bàn phím:

Chúng ta chỉ viết 1 hàm, khi cần sử dụng trong bài nào, ta sẽ đưa hàm này vào bài đó

Cách 1: (kiểu kinh điển)

Code:

void NhapMang(float a[], int &n){ // n là tham chiếu

cout << "Nhap N = "; //thong bao cho nguoi dung nhap so luong

Trang 18

cin >> n; //nhap gia tri cho bien n tu ban phim

cout << "Nhap mang" << endl; //thong bao qua trinh nhap bat dau

for (int i = 0; i < n ; i++){ //vong lap duyet tu chi so 0 den n-1

cout << "a[" << i << "] = "; //moi lan: thong bao phan tu sap duoc nhap

cin >> a[i]; //nhap gia tri tu ban phim cho phan tuthu i

} //ket thuc vong lap

Cách 2: Sử dụng con trỏ như là biến mảng

Code:

void NhapMang(float *a, int &n){

cout << "Nhap N = "; //thong bao cho nguoi dung nhap so luong

cin >> n; //nhap gia tri cho bien n tu ban phim

cout << "Nhap mang" << endl; //thong bao qua trinh nhap bat dau

for (int i = 0; i < n ; i++){ //vong lap duyet tu chi so 0 den n-1

cout << "a[" << i << "] = "; //moi lan: thong bao phan tu sap duoc nhap

cin >> *(a+i); //nhap gia tri tu ban phim cho phan tuthu i

} //ket thuc vong lap

Ở đây a được hiểu là địa chỉ của đầu mảng, tương đương với a[0]

và (a+i) là địa chỉ của phần tử thứ i trong mảng

Cách 3: Kết hợp 2 kiểu trên

Code:

void NhapMang(float *a, int &n){

cout << "Nhap N = "; //thong bao cho nguoi dung nhap so luong

cin >> n; //nhap gia tri cho bien n tu ban phim

cout << "Nhap mang" << endl; //thong bao qua trinh nhap bat dau

for (int i = 0; i < n ; i++){ //vong lap duyet tu chi so 0 den n-1

cout << "a[" << i << "] = "; //moi lan: thong bao phan tu sap duoc nhap

cin >> a[i]; //nhap gia tri tu ban phim cho phan tuthu i

} //ket thuc vong lap

Cách sử dụng: Hàm nhập mảng với 3 cách trên đều có thể được sử dụng vào bài 11 chế với bài giải lần 2 ở trên

Câu hỏi: Nếu đề bài là Nhập n phần tử số nguyên từ bàn phím thì chúng ta sẽ thay đổi chỗ

nào trong 3 hàm trên?

Đề bài: Nhập mảng n phần tử số nguyên từ bàn phím

a0) Liệt kê các số chẵn có trong mảng

b0) Đếm các số chẵn có trong mảng

c0) Tính tổng các số chẵn có trong mảng

Trang 19

a1) Liệt kê các số nguyên tố có trong mảng

b1) Đếm các số nguyên tố có trong mảng

c1) Tính tổng các số nguyên tố có trong mảng

Phân tích:

Ta đã có hàm nhập n phần tử số nguyên ở trên roài.

sau khi nhập xong số lượng n, và n phần tử số nguyên cho mảng

ta sẽ duyệt qua mọi phần tử của mảng:

trong mỗi lần duyệt, nếu gặp phần tử thỏa mãn điều kiện ( là số chẵn (a0), hoặc là số nguyên tố (a1) ) thì sẽ xử lý phần tử đó theo yêu cầu (liệt kê, đếm hoặc là tính tổng )

Ta có code C++ giải các ý a1, b1, c1 như sau:

Code:

#include <iostream.h> //khai bao thu vien su dung luong nhap xuat

#include <iomanip.h> //thu vien dinh dang nhap xuat

#include <math.h> //thu vien cac ham toan hoc

#include <conio.h> //thu vien cung cap cac ham ve man hinh, ban phim

void NhapMang(int *a, int &n){

cout << "Nhap N = "; //thong bao cho nguoi dung nhap so luong

cin >> n; //nhap gia tri cho bien n tu ban phim

cout << "Nhap mang" << endl; //thong bao qua trinh nhap bat dau

for (int i = 0; i < n ; i++){ //vong lap duyet tu chi so 0 den n-1

cout << "a[" << i << "] = "; //moi lan: thong bao phan tu sap duoc nhap

cin >> *(a+i); //nhap gia tri tu ban phim cho phan tuthu i

} //ket thuc vong lap

int kiemtra_snt(int x){ // tra ve 1 neu x la snt, nguoc lai tra ve 0

for(int i=2; i<=sqrt(x); i++)

if(x%i==0)return 0; //x chia het cho i => x khong phai la snt return 1;

}

void lietke_snt(int a[], int n){ //ham in ra cac so nguyen to

for(int i=0; i < n; i++)

if(kiemtra_snt(a[i])) cout<<a[i]<<" ";

cout<<endl;

}

int dem_snt(int a[], int n){ //ham tra ve so luong so nguyen to

int c=0; //khai bao bien c dung de dem snt

for(int i=0; i < n; i++)

if(kiemtra_snt(a[i])) c++; //tang bien dem len 1

return c; //tra ve so luong snt dem duoc

}

int tong_snt(int a[], int n){ //ham tra ve so luong so nguyen to

int t=0; //khai bao bien t dung de tinh tong

for(int i=0; i < n; i++)

if(kiemtra_snt(a[i])) t += a[i]; //cong luy tien vao bien t

return t; //tra ve tong cac so nguyen to

Trang 20

int a[100]; //khai bao bien mang a co 100 phan tu so nguyen

mang

NhapMang(a,n); //nhap n gia tri cho tung phan tu cua mang

cout<<"Liet ke snt: ";

lietke_snt(a,n);

cout<<"so luong snt: "<<dem_snt(a,n)<<endl;

cout<<"Tong cac so nguyen to: "<<tong_snt(a,n)<<endl;

+đầu tiên yêu cầu người dùng nhập số lượng phần tử là n

+lặp n lần, mỗi lần nhập 1 giá trị, vừa nhập xong là so sánh với biến min và max, nếu giá trị vừa nhập bé hơn min thì min sẽ bằng số vừa nhập, và nếu số đó lớn hơn biến max thì max sẽ bằng số đó

Cách 2: dùng mảng (kinh điển)

+ nhập mảng n phần tử số nguyên từ bàn phím (đã có thuật toán và code ở trên)

+ gán tạm thời min và max bằng phần tử đầu tiên

+ duyệt qua toàn mảng: nếu giá trị đang duyệt bé hơn min hoặc lớn hơn max thì cập nhật lại min

và max

Cách 3: dài dòng nhất

+ nhập mảng n phần tử số nguyên từ bàn phím (đã có thuật toán và code ở trên)

+ sắp xếp tăng dần (hoặc giảm dần)

+ nếu sắp xếp tăng dần thì min sẽ là phần tử đâu tiên, và max sẽ là phần tử cuối cùng trong mảng

đã sắp xếp.

giờ muộn roài, đi ngủ cái đã, lúc khác post code lên.

Bài 16 Hãy xây dựng một hàm để nhập từ bàn phím một mảng số thực Viết một chương

trình sử dụng hàm đã xây dựng được ở trên để nhập số liệu cho hai mảng số thực, một mảng có n phẩn tử, và một mảng có m phần tử, in ra màn hình hai cột song song, mỗi cột là một mảng với ô cuối cùng là tổng của các phần tử trong mảng, và cuối cùng là tổng của hai mảng.

Trang 21

//Do bài yêu cầu nhập hai mang

//Chúng ta cho thêm tham số name để hiển thị tên mạng khi nhập

void nhapMang(double *a,char *name, int n){

for (int i=0; i<n;i++)

s2=s2+b[i];

}

//Luc nay chi con phan tu cua mang A hoac B

else if (i<n)//Neu i<n thi In phan tu cua mang a

}

}

cout<<"\n -";

Trang 22

+đầu tiên yêu cầu người dùng nhập số lượng phần tử là n

+lặp n lần, mỗi lần nhập 1 giá trị, vừa nhập xong là so sánh với biến min và max, nếu giá trị vừa nhập bé hơn min thì min sẽ bằng số vừa nhập, và nếu số đó lớn hơn biến max thì max sẽ bằng số đó

Code:

#include <iostream.h>

void main(){

int x, i, n, min, max;

cout << "Nhap so luong n = "; cin >> n; //nhap so luong

if ( n > 0 ) { //so luong > 0

cout<<" Gia tri phan tu thu dau tien = "; cin >> x; //nhap a[0]

min = max = x; //min=max=a[0]

for ( i = 2 ; i<=n; i++ ){ //vong lap i=2->n cout<<" Gia tri phan tu thu "<<i<<" = "; cin >> x; //nhap a[i]

if ( x < min ) min = x; //cap nhat min

if ( x > max ) max = x; //cap nhat max

}

cout << "Gia tri lon nhat = " << max << endl; //in ket qua

cout << "Gia tri nho nhat = " << min << endl;

}

}

Đề bài: Nhập n phần tử số nguyên, in ra màn hình giá trị nhỏ nhất và lớn nhất trong mảng

Cách giải 2: dùng mảng (kinh điển)

+ nhập mảng n phần tử số nguyên từ bàn phím (đã có thuật toán và code ở trên)

+ gán tạm thời min và max bằng phần tử đầu tiên

+ duyệt qua toàn mảng: nếu giá trị đang duyệt bé hơn min hoặc lớn hơn max thì cập nhật lại min

và max

Code:

#include <iostream.h>

void NhapMang(int *a, int &n){

cout << "Nhap N = "; cin >> n;

Trang 23

cout << "Nhap mang" << endl;

for (int i = 0; i < n ; i++){

cout << "a[" << i << "] = ";

cin >> *(a+i);

}

}

void TimMinMax(int a[], int n, int &min, int &max){

min = max = a[0];

for (int i = 1; i < n ; i++){

if ( a[i] < min ) min = a[i];

if ( a[i] > max ) max = a[i];

TimMinMax (a, n, min, max);

cout << "Gia tri lon nhat = " << max << endl;

cout << "Gia tri nho nhat = " << min << endl;

}

Chú ý: biến min và max trong đối số hàm TimMminMax là tham chiếu nhé

void TimMinMax(int a[], int n, int & min, int & max)

ở code trên hàm tìm min và max dùng cách kinh điển,

ta có thể thay đổi bằng cách dùng con trỏ như sau:

Code:

void TimMinMax(int *a, int n, int &min, int &max){

min = max = *a;

for (int i = 1, *p=++a; i < n ; i++, p++){

if ( *p < min ) min = *p;

if ( *p > max ) max = *p;

}

}

chú ý a tương đương với con trỏ trỏ vào đầu mảng nên *a tương đương với a[0]

ban đầu p trỏ vào phần tử a[1] (khối khởi tạo con trỏ *p=++a, tức là p trỏ tới a[1] )

trong mỗi vòng lặp p trỏ vào a[i], và cập nhật min và max nếu a[i] < min hoặc a[i] > max

sau đó p trỏ đến phần tử tiếp theo (lệnh p++ )

(biến i ở đây đảm bảo duyệt sẽ duyệt từ a[1] đến a[n-1] : duyệt hết)

Có ai ko hiểu cách làm việc của hàm tìm min max thứ 2 này không?

Đề bài: Nhập n phần tử số nguyên, in ra màn hình giá trị nhỏ nhất và lớn nhất trong mảng

Cách giải 3: dài dòng nhất

+ nhập mảng n phần tử số nguyên từ bàn phím (đã có thuật toán và code ở trên)

+ sắp xếp tăng dần (hoặc giảm dần)

Trang 24

+ nếu sắp xếp tăng dần thì min sẽ là phần tử đâu tiên, và max sẽ là phần tử cuối cùng trong mảng

đã sắp xếp.

Code:

#include <iostream.h>

void NhapMang(int *a, int &n){

cout << "Nhap N = "; cin >> n;

cout << "Nhap mang" << endl;

for (int i = 0; i < n ; i++){

cout << "a[" << i << "] = ";

cin >> *(a+i);

}

}

void SapXep(int a[], int n) { //sắp xếp tăng dần

for (int i = 0; i < n - 1; i++)

cout << "Gia tri nho nhat = " << a[0] << endl;

cout << "Gia tri lon nhat = " << a[n-1] << endl;

}

Đề bài : Nhập n phần tử số nguyên Nhập phần tử cần tìm kiếm X Nếu trong n phần tử

đã nhập có X thì báo "tìm thấy", "số lần tìm thấy" và "các vị trí tìm thấy", ngược lại báo

nếu đếm thấy có: tiến hành liệt kê các vị trí

ngược lại thì thông báo không có

Đơn giản vậy thôi

ta sẽ chia các công việc ra từng hàm riêng

hàm nhập kinh điển

Trang 25

hàm đếm trả về số lượng phần tử có giá trị bằng giá trị cho trước

hàm liệt kê: tươg tự hàm trên, mỗi khi gặp a[i] bằng x thì in vị trí ra (vị trí là i)

Code C++ đây thực hành nào:

Code:

#include <iostream.h>

void NhapMang(int a[], int &n){

cout << "Nhap so luong phan tu cua mang: "; cin >> n;

for (int i = 0; i < n ; i++){

cout << "a[" << i << "] = "; cin >> a[i];

void LietKe(int a[], int n, int x) {

for (int i = 0; i < n; i++) if (a[i] == x) cout << i << " ";

void NhapMang(int a[], int &n){

cout << "Nhap N = "; cin >> n;

for (int i = 0; i < n ; i++){

cout << "a[" << i << "] = "; cin >> a[i];

}

}

Trang 26

int TimKiem(int a[], int n, int x) {

for (int i=0; i < n; i++) if(a[i]==x) return 1;

cout << "Gia tri tim kiem = "; cin >> x;

if( TimKiem (a, n, x) ){

Tính ước số chung lớn nhất của 91 và 287.

Trước hết lấy 287 (số lớn hơn trong 2 số) chia cho 91:

287 = 91*3 + 14 (91 & 14 sẽ được dùng cho vòng lặp kế)

Nhận xét: bất kỳ số nào chia hết bởi 287 và 91 cũng sẽ chia hết bởi 287 - 91*3 = 14 Tương tự, số chia hết bởi 91 và 14 cũng chia hết bởi 91*3 + 14 = 287 Do đó, ƯSCLN(91,287) =

ƯSCLN(91,14) Bài toán trở thành tìm ƯSCLN(91,14) Lặp lại quy trình trên cho đến khi phép chia không còn số dư như sau:

91 = 14*6 + 7 (14 & 7 sẽ được dùng cho vòng lặp kế)

14 = 7*2 (không còn số dư, kết thúc, nhận 7 làm kết quả)

Cuối cùng ta có: 7 = ƯSCLN(14,7) = ƯSCLN(91,14) = ƯSCLN(287,91).

cout<<"Nhap a,b"; cin>>a>>b;

int x= abs(a), y= abs(b), r;

while (y!=0)

Trang 27

cout<<"Nhap a,b"; cin>>a>>b;

int x= abs(a), y= abs(b), r;

Trang 28

Bài tập: Nhập mảng n phần tử số nguyên, nhập giá trị m, in ra màn hình các số không lớn hơn m theo thứ tự tăng dần, các số còn lại theo thứ tự giảm dần

Phân tích: Cho một ví dụ để các bạn hiểu yêu cầu nhé: Giả sử mảng nhập vào có 10 phần tử là: 2

9 8 3 7 4 6 5 1 0 và m là 6 thì cần phải in ra: 0 1 2 3 4 5 6 9 8 7

Bài này có nhiều cách giải, sau đây là 1 cách:

+khai báo mảng, khai báo biến số lương n, khai báo biến m

+Nhập mảng: nhập n, nhập n phần tử

+nhập m

+sắp xếp toàn bộ mảng theo thứ tự tăng dần

+tìm k là vị trí phần tử bé nhất trong mảng đã sắp xếp nhưng lớn hơn m

+từ k đến cuối mảng: sắp xếp giảm dần (có thể dùng thuật toán soi gương ở đây)

+in mảng ra màn hình sẽ được kết quả mong muốn.

code C++ nè:

Code:

#include <iostream.h>

void NhapMang(int *a, int &n){

cout << "Nhap N = "; cin >> n;

for (int i = 0; i < n ; i++){

void liet_ke(int a[], int n){

for(int i=0; i<n; i++)

cout<<a[i]<<" ";

}

Trang 29

phần trước có bài bài tập gptb2 với hệ số a, b, c bất kỳ, đã post 2 bài là gptb1 và gptb2 riêng

biệt, nhưng k thấy có bạn nào ghép nó lại cả

giờ rảnh malyfo ghép lại nè:

cout<<"pt co 2 nghiem thuc"<<endl

<<"nghiem thuc 1="<<x1<<endl

<<"nghiem thuc 2="<<x2<<endl;

}

else{

cout<<"pt k co nghiem thuc\n";

cout<<"pt co 2 nghiem phuc lien hop"<<endl;

Trang 30

gptb1(b,c);

}

Bài 6 Viết một chương trình nhập vào từ bàn phím điểm kiểm tra của một môn học của n

học sinh và in kết quả ra màn hình dưới dạng hai cột song song, một cột là điểm và cột thứ hai là xếp loại theo điểm với các qui định sau:

Trang 31

Đề Bài : Nhập mảng n phần tử số nguyên, kiểm tra xem mảng có phải là tăng dần không? nếu không phải thì sắp xếp tăng dần Nhập số nguyên cần tìm kiếm m, tìm kiếm theo thuật toán tìm kiếm nhị phân nếu thấy báo số lượng tìm thấy, vị trí tìm thấy, ngược lại thông báo không thấy Sau khi tìm xong, hỏi có tìm nữa khôg? nếu tìm nữa thì lại nhập

m, rồi tìm y chang như trên cứ thế cho đến khi trả lời là không muốn tìm nữa thì thôi

Và đây là Code hoàn thiện ghép nối các module trên

Code:

#include <iostream.h>

void NhapMang(int *a, int &n){

cout << "Nhap N = "; cin >> n;

for (int i = 0; i < n ; i++){

cout << "a[" << i << "] = ";

cin >> a[i];

}

}

void SapXep_TangDan(int a[], int n){

for(int i=0; i<n-1; i++)

int KiemTra_TangDan (int a[], int n){

for( int i = 0; i < n - 1; i ++ ) if ( a[i] > a[i+1] ) return 0;

Trang 32

for(i = 0; i < n; i++) cout << a[i] << " ";

Chú ý là bài trên chưa có tìm số lượng.

và cũng chưa làm được "Sau khi tìm xong, hỏi có tìm nữa khôg? nếu tìm nữa thì lại nhập m, rồi tìm y chang như trên cứ thế cho đến khi trả lời là không muốn tìm nữa thì thôi"

Giải quyết bài toán kiểu "Sau khi tìm xong, hỏi có tìm nữa khôg? nếu tìm nữa thì lại nhập m,

rồi tìm y chang như trên cứ thế cho đến khi trả lời là không muốn tìm nữa thì thôi"

cụ thể cho bài trên

cout << "Mang sap xep tang dan:";

for(i = 0; i < n; i++) cout << a[i] << " ";

Vậy cách chung để giải quyết là:

khai báo 1 biến kiểu ký tự để chứa trả lời

đặt công việc cần làm trong vòng lặp kiểm tra sau do - while

khi làm xong công việc thì hỏi lại người dùng có muốn chạy lại không? (c/k)

và nếu là Có thì sẽ làm lại!

Code:

Trang 33

Nhập mảng n phần tử số nguyên, tìm giá trị phần tử xuất hiện nhiều nhất trong mảng, nếu

có nhiều giá trị khác nhau cùng xuất hiện nhiều nhất thì liệt kê hết các giá trị đó ra.

ví dụ 1:

có 11 phần tử: 1 4 4 2 2 4 5 6 3 6 6

thì thông báo

giá trị 4 xuất hiện 3 lần

giá trị 6 xuất hiện 3 lần.

ví dụ 2:

có 12 phần tử: 1 2 3 3 3 2 2 3 3 4 4 5

thì thông báo

Trang 34

giá trị 3 xuất hiện 5 lần

Phân tích cách 2

sau khi có mảng n phần tử số nguyên

ta sắp xếp tăng dần (hoặc giảm dần cũng OK) mảng đó

khi đó cũng dùng mảng đếm d để lưu số lần xuất hiện của từng phần tử (chỗ này có khác đi 1 tí

để dễ dàng việc loại bỏ giá trị lặp hơn

bằng cách duyệt từ đầu đến hết mảng đã sắp xếp

mỗi khi gặp giá trị trùng (trùng thì đứng cạnh nhau do đã sắp xếp) thì tăng số biến đếm thôi d[0]=1;

for( i = 1; i < n; i++ ) d[i] = ( a[i]==a[i-1] ) ? d[i-1]+1 : 1 ;

khi đó tìm max = giá trị max trong mảng d

rồi liệt kê lại các giá trị a[k] tương ứng với d[k] có giá trị bằng max

Các bạn cùng phân tích nhé! OK?

Code:

#include <iostream.h>

void NhapMang(int *a, int &n){

cout << "Nhap N = "; cin >> n;

void SapXep_TangDan(int a[], int n){

for(int i=0; i<n-1; i++)

Trang 35

void LietKe(int *a, int *d, int n){

int a,b; //hai toan hang a,b

char ch;//dau cua phep toan

Trang 36

cout<<"Khong thuc hien phep chia";

Ngày đăng: 14/08/2013, 15:03

HÌNH ẢNH LIÊN QUAN

Bài 19. Cho tuổi và số con củ an phụ nữ trong độ tuổi 15-49, hãy xây dựng một hàm tính và in bản phân bố của các phụ nữ này theo nhóm 5 tuổi - Bài tập lập trình c++
i 19. Cho tuổi và số con củ an phụ nữ trong độ tuổi 15-49, hãy xây dựng một hàm tính và in bản phân bố của các phụ nữ này theo nhóm 5 tuổi (Trang 3)
chữ hoa (các chữ khác giữ nguyên) và in cả hai ra màn hình. Viết một chương trình nhập một xâu bất kỳ từ bàn phím, sau đó sử dụng hàm đã xây dựng ở trên đê in kết quả ra màn hình.bất kỳ từ bàn phím, sau đó sử dụng hàm đã xây dựng ở trên đê in kết quả ra m - Bài tập lập trình c++
ch ữ hoa (các chữ khác giữ nguyên) và in cả hai ra màn hình. Viết một chương trình nhập một xâu bất kỳ từ bàn phím, sau đó sử dụng hàm đã xây dựng ở trên đê in kết quả ra màn hình.bất kỳ từ bàn phím, sau đó sử dụng hàm đã xây dựng ở trên đê in kết quả ra m (Trang 3)
Bài 26. Hãy xây dựng một hàm in ra màn hình nội dung một tệp văn bản bất kỳ (có dựng lại sau mỗi trang màn hình) - Bài tập lập trình c++
i 26. Hãy xây dựng một hàm in ra màn hình nội dung một tệp văn bản bất kỳ (có dựng lại sau mỗi trang màn hình) (Trang 4)
Bài 38. Hãy xây dựng một hàm in ra mnaf hình nội dung của một tệp văn bản bất kỳ theo dạng trang màn hình có đánh số trang - Bài tập lập trình c++
i 38. Hãy xây dựng một hàm in ra mnaf hình nội dung của một tệp văn bản bất kỳ theo dạng trang màn hình có đánh số trang (Trang 5)
Bài 1. Viết chương trình nhập từ bàn phí mn số nguyên dương nhỏ hơn 100, in ra màn hình hai cột - Bài tập lập trình c++
i 1. Viết chương trình nhập từ bàn phí mn số nguyên dương nhỏ hơn 100, in ra màn hình hai cột (Trang 6)
Đáp án Bài 4. Cho x là một số thực, hãy xây dựng hàm tính và in ra màn hình hai cột song song, cột thứ nhất là giá trị của đối số, cột thứ hai là giá trị của hàm f ứng với đối số ở cột thứ nhất:cột thứ nhất là giá trị của đối số, cột thứ hai là giá trị củ - Bài tập lập trình c++
p án Bài 4. Cho x là một số thực, hãy xây dựng hàm tính và in ra màn hình hai cột song song, cột thứ nhất là giá trị của đối số, cột thứ hai là giá trị của hàm f ứng với đối số ở cột thứ nhất:cột thứ nhất là giá trị của đối số, cột thứ hai là giá trị củ (Trang 8)
Bài 5. Viết chương trình tính và in ra màn hình số tiền điện tháng 10/99 củ an khách hàng theo các chỉ số trên đồng hồ điện của tháng 9 và của tháng 10 được nhập vào từ bàn phím (phải kiểm tra để  đảm bảo rằng chỉ số của tháng sau phải lớn hơn chỉ số của  - Bài tập lập trình c++
i 5. Viết chương trình tính và in ra màn hình số tiền điện tháng 10/99 củ an khách hàng theo các chỉ số trên đồng hồ điện của tháng 9 và của tháng 10 được nhập vào từ bàn phím (phải kiểm tra để đảm bảo rằng chỉ số của tháng sau phải lớn hơn chỉ số của (Trang 9)
Bài 5. Viết chương trình tính và in ra màn hình số tiền điện tháng 10/99 củ an khách hàng theo các chỉ số trên đồng hồ điện của tháng 9 và của tháng 10 được nhập vào từ bàn phím (phải kiểm tra để  đảm bảo rằng chỉ số của tháng sau phải lớn hơn chỉ số của  - Bài tập lập trình c++
i 5. Viết chương trình tính và in ra màn hình số tiền điện tháng 10/99 củ an khách hàng theo các chỉ số trên đồng hồ điện của tháng 9 và của tháng 10 được nhập vào từ bàn phím (phải kiểm tra để đảm bảo rằng chỉ số của tháng sau phải lớn hơn chỉ số của (Trang 9)
Bài 11 (chế lại đầu bài): Nhập n phần tử số thực từ bàn phím, in mảng ra màn hình, sắp xếp giảm dần, in mảng vừa sắp xếp.giảm dần, in mảng vừa sắp xếp. - Bài tập lập trình c++
i 11 (chế lại đầu bài): Nhập n phần tử số thực từ bàn phím, in mảng ra màn hình, sắp xếp giảm dần, in mảng vừa sắp xếp.giảm dần, in mảng vừa sắp xếp (Trang 15)
Chú ý: nếu muốn sắp xếp tăng dần thì thay toán tử so sánh nhỏ hơn trong đoạn code trên bởi toán tử so sánh lớn hơn. - Bài tập lập trình c++
h ú ý: nếu muốn sắp xếp tăng dần thì thay toán tử so sánh nhỏ hơn trong đoạn code trên bởi toán tử so sánh lớn hơn (Trang 16)
Bài 11 (chế lại đầu bài): Nhập n phần tử số thực từ bàn phím, in mảng ra màn hình, sắp xếp giảm dần, in mảng vừa sắp xếp.giảm dần, in mảng vừa sắp xếp. - Bài tập lập trình c++
i 11 (chế lại đầu bài): Nhập n phần tử số thực từ bàn phím, in mảng ra màn hình, sắp xếp giảm dần, in mảng vừa sắp xếp.giảm dần, in mảng vừa sắp xếp (Trang 16)
Đề bài: Nhập n phần tử số nguyên, in ra màn hình giá trị nhỏ nhất và lớn nhất trong mảng Phân tích: Bài này có nhiều cách giải - Bài tập lập trình c++
b ài: Nhập n phần tử số nguyên, in ra màn hình giá trị nhỏ nhất và lớn nhất trong mảng Phân tích: Bài này có nhiều cách giải (Trang 20)
Đề bài: Nhập n phần tử số nguyên, in ra màn hình giá trị nhỏ nhất và lớn nhất trong mảng Cách 1 (đơn giản nhất):  - Bài tập lập trình c++
b ài: Nhập n phần tử số nguyên, in ra màn hình giá trị nhỏ nhất và lớn nhất trong mảng Cách 1 (đơn giản nhất): (Trang 22)
Đề bài: Nhập n phần tử số nguyên, in ra màn hình giá trị nhỏ nhất và lớn nhất trong mảng Cách giải 2: dùng mảng (kinh điển) - Bài tập lập trình c++
b ài: Nhập n phần tử số nguyên, in ra màn hình giá trị nhỏ nhất và lớn nhất trong mảng Cách giải 2: dùng mảng (kinh điển) (Trang 22)
Đề bài: Nhập n phần tử số nguyên, in ra màn hình giá trị nhỏ nhất và lớn nhất trong mảng - Bài tập lập trình c++
b ài: Nhập n phần tử số nguyên, in ra màn hình giá trị nhỏ nhất và lớn nhất trong mảng (Trang 23)
Đề bài: Nhập n phần tử số nguyên. Nhập phần tử cần tìm kiếm X. Đưa ra màn hình &#34;TÌM THẤY&#34; nếu có X trong mảng, ngược lại báo &#34;KHÔNG THẤY&#34;  - Bài tập lập trình c++
b ài: Nhập n phần tử số nguyên. Nhập phần tử cần tìm kiếm X. Đưa ra màn hình &#34;TÌM THẤY&#34; nếu có X trong mảng, ngược lại báo &#34;KHÔNG THẤY&#34; (Trang 25)
Bài tập: Nhập mản gn phần tử số nguyên, nhập giá trị m,in ra màn hình các số không lớn hơn m theo thứ tự tăng dần, các số còn lại theo thứ tự giảm dầnhơn m theo thứ tự tăng dần, các số còn lại theo thứ tự giảm dần - Bài tập lập trình c++
i tập: Nhập mản gn phần tử số nguyên, nhập giá trị m,in ra màn hình các số không lớn hơn m theo thứ tự tăng dần, các số còn lại theo thứ tự giảm dầnhơn m theo thứ tự tăng dần, các số còn lại theo thứ tự giảm dần (Trang 28)
Phân tích: Cho một ví dụ để các bạn hiểu yêu cầu nhé: Giả sử mảng nhập vào có 10 phần tử là: 29 8 3 7 4 6 5 1 0 và m là 6 thì cần phải in ra: 0 1 2 3 4 5 6 9 8 7 - Bài tập lập trình c++
h ân tích: Cho một ví dụ để các bạn hiểu yêu cầu nhé: Giả sử mảng nhập vào có 10 phần tử là: 29 8 3 7 4 6 5 1 0 và m là 6 thì cần phải in ra: 0 1 2 3 4 5 6 9 8 7 (Trang 28)
Vậy cách chung để giải quyết là: - Bài tập lập trình c++
y cách chung để giải quyết là: (Trang 33)
Viết chương trình nhập vào bán kính hình cầu, tính và in ra diện tích, thể tích của hình cầu đó - Bài tập lập trình c++
i ết chương trình nhập vào bán kính hình cầu, tính và in ra diện tích, thể tích của hình cầu đó (Trang 36)
Nhập vào số nguyên dương n. In ra màn hình các số nguyên tố từ 1 đến n - Bài tập lập trình c++
h ập vào số nguyên dương n. In ra màn hình các số nguyên tố từ 1 đến n (Trang 40)
Bài này chưa có thuật toán nào hay hơn sàng Eratosthene là một giải thuật cổ xưa để lập bảng tất cả các số nguyên tố nhỏ hơn một số n cho trước - Bài tập lập trình c++
i này chưa có thuật toán nào hay hơn sàng Eratosthene là một giải thuật cổ xưa để lập bảng tất cả các số nguyên tố nhỏ hơn một số n cho trước (Trang 40)
Viết chương trình nhập vào số tự nhiê nN rồi thông báo lên màn hình số đó có phải là số nguyên tố hay không.hay không. - Bài tập lập trình c++
i ết chương trình nhập vào số tự nhiê nN rồi thông báo lên màn hình số đó có phải là số nguyên tố hay không.hay không (Trang 42)
Viết chương trình nhập vào số tự nhiê nN rồi thông báo lên màn hình số đó có phải là số nguyên tố hay không.hay không. - Bài tập lập trình c++
i ết chương trình nhập vào số tự nhiê nN rồi thông báo lên màn hình số đó có phải là số nguyên tố hay không.hay không (Trang 42)
Đề bài: Viết chương trình nhập vào số tự nhiê nN rồi thông báo lên màn hình số đó có phải là số nguyên tố hay không. - Bài tập lập trình c++
b ài: Viết chương trình nhập vào số tự nhiê nN rồi thông báo lên màn hình số đó có phải là số nguyên tố hay không (Trang 43)
Bài 5. Viết chương trình tính và in ra màn hình số tiền điện tháng 10/99 củ an khách hàng theo các chỉ số trên đồng hồ điện của tháng 9 và của tháng 10 được nhập vào từ bàn phím (phải kiểm tra để đảm bảo rằng chỉ số của tháng sau phải lớn hơn chỉ số của c - Bài tập lập trình c++
i 5. Viết chương trình tính và in ra màn hình số tiền điện tháng 10/99 củ an khách hàng theo các chỉ số trên đồng hồ điện của tháng 9 và của tháng 10 được nhập vào từ bàn phím (phải kiểm tra để đảm bảo rằng chỉ số của tháng sau phải lớn hơn chỉ số của c (Trang 54)
Nhập vào một mảng số nguyên n phần tử từ bàn phím, in ra màn hình phần tử có số lần xuất hiện nhiều lần nhất trong mản vừa nhập. - Bài tập lập trình c++
h ập vào một mảng số nguyên n phần tử từ bàn phím, in ra màn hình phần tử có số lần xuất hiện nhiều lần nhất trong mản vừa nhập (Trang 61)
In xâu kí tự ra màn hình - Bài tập lập trình c++
n xâu kí tự ra màn hình (Trang 68)

TỪ KHÓA LIÊN QUAN

w