ĐẠI HỌC SỰ PHẠM KỸ THUẬT HỒ CHÍ MINH
KHOA CƠ KHÍ CHẾ TẠO MÁY
BỘ MÔN CƠ ĐIỆN TỬ
TÀI LIỆU THỰC TẬP
LẬP TRÌNH ỨNG DỤNG TRONG KỸ THUẬT
Tp. HCM, 2016
(Lƣu hành nội bộ)
Bài 1:
LẬP TRÌNH C/C++ CĂN BẢN: Biến, Toán tử,
Cấu trúc điều kiện, Cấu trúc lặp.
I. MỤC ĐÍCH YÊU CẦU:
- Phân tích yêu cầu, xây dựng giải thuật và viết code theo yêu cầu.
- Xây dựng những chương trình cơ bản bằng ngôn ngữ C/C++.
- Hình thành kỹ năng phát hiện và sửa lỗi khi lập trình.
II. HƯỚNG DẪN LÝ THUYẾT:
1.
Giới thiệu phần mềm Visual Studio:
Tạo dự án (project):
Mở chương trình VS 2008. Trong màn hình khởi động, chọn File - > New -> Project
Trong cửa sổ New Project : Chọn kiểu ngôn ngữ là Visual C++, trong cửa sổ Templates
chọn Empty Project.
Nhập tên của project vào ô Name và chọn thư mục chứa project trong ô Location.
Nhấp OK.
Để thêm file soạn thảo của chương trình, trong cửa sổ Solution Explorer, click phải vào dòng
Source Files chọn Add -> New Item.
Chọn C++ file (.cpp) và nhập tên vào ô Name
Xuất hiện giao diện để lập trình, giao diện này bao gồm 3 cửa sổ:
Solution Explorer: cửa số quản lý của project.
Source file (.cpp): phần soạn thảo câu lệnh của chương trình.
Output: cửa sổ thông báo khi biên dịch chương trình.
Sau khi hoàn tất chương trình, nhấn vào biểu tượng Debug để chạy chương trình (hoặc nhấn F5).
Khi Debug, nếu chương trình co lỗi về mặt cú pháp, VS sẽ thông báo các lỗi này trong cửa sổ
Error, nhấp kép chuột vào dòng thông báo lỗi để biết vị trí lỗi.
Nếu không thấy cửa sổ Error, trên thanh công cụ chọn View -> Other Windows -> Error List.
(Hoặc nhấn Ctrl+F5).
2.
Tóm tắt lý thuyết:
2.1.
Biến và Kiểu dữ liệu:
a) Biến:
- Khai báo biến:
VD:
int x;
- Gán giá trị cho biến:
VD:
type Name; // Type: Kiểu dữ liệu ; Name: tên biến.
Name = Value; // Name: Tên biến ; Value: Giá trị của biến.
x = 10;
b) Kiểu dữ liệu:
- Số nguyên:
int
: số nguyên 16/32 bit có dấu (VD: int x = 20;).
- Số thực:
float : số thực 32 bit (7 chữ số có nghĩa) (VD: float x = -0.1245;).
double : số thực 64 bit (15 chữ số có nghĩa) (VD: double x = 10.56;).
- Số bool:
bool
: số bool (chỉ có 2 giá trị true hoặc false) (VD: bool x = true;).
char
: kiểu kí tự (VD: char x = 'A').
- Kí tự:
2.2.
Toán tử:
Toán tử số học :
: Phép trừ hay phép lấy phần âm.
*
: Phép nhân.
%
: Phép chia lấy dư.
-: Giảm đơn vị.
Toán tử gán :
=
+
/
++
: Phép cộng.
: Phép chia.
: Tăng đơn vị.
<
<=
!=
: So sánh nhỏ hơn.
: So sánh nhỏ hơn hoặc bằng.
: So sánh không bằng.
: gán giá trị cho biến.
Toán tử so sánh :
>
>=
==
: So sánh lớn hơn.
: So sánh lớn hơn hoặc bằng.
: So sánh bằng.
Toán tử logic :
2.3.
!
: Phép NOT.
&&
Cấu trúc điều kiện, cấu trúc lặp:
: Phép AND.
a) Cấu trúc điều kiện if ... else if ... else:
Cú pháp :
if (điều kiện1)
{
Statement1;
}
else if (điều kiện2)
{
Statement2;
}
else if (điều kiện3)
{
Statement3;
}
...
else
{
Statementn;
}
Thực hiện đoạn lệnh Statementn khi điều kiện thứ n là đúng.
b) Cấu trúc điều kiện switch...case...:
||
: Phép OR.
Cấu trúc “switch” là cấu trúc điều kiện nhiều lựa chọn.
Cú pháp :
switch (expression)
// expression là một biểu thức.
{
case
constant1:
Statement1;
break;
case constant2:
Statement2;
break;
default:
Statement3;
// Nếu kết quả biểu thức = constant1 thì thực hiện
đoạn mã lệnh Statement1.
// Sau khi kết thúc Statement1 thì thoát khỏi.
// Nếu kết quả biểu thức = constant2 thì thực hiện
đoạn mã lệnh Statement2.
// Sau khi kết thúc Statement2 thì thoát khỏi.
// Đoạn lệnh mặc định
}
c) Cấu trúc lặp for:
for (initialization ; condition ; increment)
{
Statements;
// Thực hiện lại đoạn lệnh khi condition vẫn còn đúng.
}
initialization: tạo giá trị ban đầu cho biến trung gian.
condition: điều kiện.
increment: thay đổi giá trị biến trung gian sau mỗi vòng lặp.
d) Cấu trúc lặp while, do-while:
Cấu trúc while:
while (condition)
{
Statements; // Thực hiện lại đoạn lệnh khi condition vẫn còn đúng.
}
Cấu trúc do-while:
do
{
Statements;
// Thực hiện lại đoạn lệnh khi condition vẫn còn đúng.
} while (condition);
2.4.
Nhập/Xuất dữ liệu ra màn hình:
Muốn xuất dữ liệu ra màn hình, ta dùng hàm printf():
printf ("chuỗi định dạng", đối mục 1, đối mục 2,…);
-
printf: tên hàm, phải viết bằng chữ thường.
-
đối mục 1,…: là các mục dữ kiện cần in ra màn hình. Các đối mục này có thể là biến,
hằng hoặc biểu thức phải được định trị trước khi in ra.
-
chuỗi định dạng: được đặt trong cặp nháy kép (" "), gồm 3 loại:
+ Đối với chuỗi kí tự ghi như thế nào in ra giống như vậy.
+ Đối với những kí tự chuyển đổi dạng thức cho phép kết xuất giá trị của các đối mục
ra màn hình tạm gọi là mã định dạng. Sau đây là các dấu mô tả định dạng:
%c : Ký tự đơn
%s : Chuỗi
%d : Số nguyên thập phân có dấu
%f : Số chấm động (ký hiệu thập phân)
%e : Số chấm động (ký hiệu có số mũ)
%g : Số chấm động (%f hay %g)
%x : Số nguyên thập phân không dấu
%u : Số nguyên hex không dấu
%o : Số nguyên bát phân không dấu
l : Tiền tố dùng kèm với %d, %u, %x, %o để chỉ số nguyên dài (ví dụ %ld)
+ Các ký tự điều khiển và ký tự đặc biệt:
\n: Nhảy xuống dòng kế tiếp canh về cột đầu tiên.
\t : Canh cột tab ngang.
\r : Nhảy về đầu hàng, không xuống hàng.
\\ : In ra dấu \
\' : In ra dấu '
%%: In ra dấu %
VD : int a = 5, b = 3;
printf ("%d x %d = %d", a,b,a*b);
Muốn nhập dữ liệu từ bàn phím, ta dùng hàm scanf():
scanf ("chuỗi định dạng", &đối mục 1, &đối mục 2,…]);
-
scanf: tên hàm, phải viết bằng chữ thường.
-
khung định dạng: được đặt trong cặp nháy kép (" ") là hình ảnh dạng dữ liệu nhập vào.
-
đối mục 1,…: là danh sách các biến cách nhau bởi dấu phẩy, mỗi biến sẽ tiếp nhận một
giá trị nhập vào.
-
& : toán tử địa chỉ.
VD : int a,b;
scanf ("%d %d", &a,&b);
III. BÀI TẬP THỰC HÀNH:
3.1.
Bài tập có hướng dẫn:
Tạo mới một project dùng phần mềm Visual Studio, nhập lại đoạn chương trình mẫu, biên dịch,
kiểm tra kết quả và nhận xét.
Bài 1:
Viết chương trình nhập 2 số a,b từ bàn phím, sau đó hiển thị các giá trị a*b, a/b, a%b ra màn
hình.
#include <stdio.h>
#include <conio.h>
void main()
{
int a,b;
printf("\n Nhap du lieu tu ban phim ");
printf("\n a = "); scanf("%d",&a);
printf("\n b = "); scanf("%d",&b);
printf("\n a*b =%10d\n a/b =%10d\n a/b =%10d",a,x);
getch();
}
Bài 2 :
Viết chương trình với các yêu cầu sau.
Cho phép người sử dụng nhập vào một số nguyên. Nếu số nhập vào >999 hoặc <-999 thì yêu cầu
người sử dụng nhập lại số.
In ra màn hình chữ số hằng trăm, hàng chục và hàng đơn vị tương ứng của số vừa nhập.
Hƣớng dẫn:
- Nhập giá trị từ bàn phím: scanf("%d",&x);
- Kiểm tra giá trị của x:
if (x>999 || x<-999)
- Nhảy lại đoạn code nhập giá trị khi giá trị x không thỏa mãn: goto X;
- Tính giá trị trăm, chục , đơn vị.
- Xuất các giá trị ra màn hình.
#include <stdio.h>
#include <conio.h>
#include <windows.h>
void main()
{
int x,tram,chuc,donvi;
X:
printf("Nhap gia tri can tinh: ");
scanf("%d",&x);
if (x>999 || x<-999)
{
system("cls");
printf("Nhap lai gia tri trong khoang [-999,999]");
goto X;
}
tram = x/100;
chuc = (x%100)/10;
donvi = x%10;
printf("Gia tri hang tram: %d, chuc: %d, don vi: %d",tram, chuc,donvi);
getch();
}
Bài 3:
Viết chương trình cho phép nhập vào 3 số thực, tìm và in ra màn hình giá trị số lớn nhất và nhỏ
nhất trong 3 số thực này.
#include <stdio.h>
#include <conio.h>
void main()
{
float x,y,z,max,min;
printf("\nNhap vao 3 so ");
scanf("%f%f%f",&x,&y,&z);
max=(x>y)?x:y;
max=(max>z)?max:z;
min=(x>y)?y:x;
min=(min>z)?z:min;
printf("\nSo lon nhat la %f",max);
printf("\nSo nho nhat la %f",min);
getch();
}
Bài 4:
Viết chương trình cho phép nhập vào hai số x (x>0),y. In ra màn hình giá trị xy
#include <stdio.h>
#include <math.h>
#include <conio.h>
#include <windows.h>
void main()
{
double x,y,z; /* khai bao 3 bien kieu double*/
system("cls");
printf("- Cho biet gia tri cua X= ");
scanf("%lf",&x);
printf("- Cho biet gia tri cua Y= ");
scanf("%lf",&y);
z=pow(x,y); /* Tinh x luy thua y va gan cho z */
/* In ket qua */
printf("KET QUA X LUY THUA Y \n");
printf("X= %8.2f \n",x);
printf("Y= %8.2f \n",y);
printf("X luy thua y = %8.2f",z);
getch();
}
Bài 5:
Viết chương trình nhập điểm thi từ bàn phím và hiển thị kết quả : kém nếu điểm từ 0 đến 3; Yếu
nếu điểm là 4; Trung bình nếu điểm từ 5 đến 6; Khá nếu điểm từ 7 đến 8; Giỏi nếu điểm từ 9 đến 10.
#include<stdio.h>
#include<conio.h>
void main()
{
int diem;
printf ("\n Chuong trinh phan loai hoc sinh theo diem ");
tt: printf ("\n VAO SO LIEU ");
printf("\n diem = "); scanf("%d",&diem);
if(( diem >= 0) && (diem <= 3))
printf(" Kem \n");
else if( diem == 4)
printf(" Yeu \n");
else if(( diem >= 5) && (diem <= 6))
printf(" Trung binh \n");
else if( diem >= 7 && diem <= 8)
printf(" Kha \n");
else if (( diem >= 9) && (diem <= 10))
printf(" Gioi \n");
else
printf(" Vao sai \n");
printf("\n tiep tuc 1 / stop 0 : ");
scanf(" %d", &diem);
if ( diem == 1) goto tt;
getch();
}
Bài 6:
Viết chương trình tìm các số nguyên tố nhỏ hơn số N cho trước.
#include <stdio.h>
#include <math.h>
#include <conio.h>
void main()
{
int n, i, j;
printf("\nNhap gia tri N : ");
scanf("%d", &n);
printf("\nCac so nguyen to nho hon %d la : \n",n);
for (i=2; i
{
for (j=2; j<=sqrt((double)i); j++)
{
if (i%j == 0) goto tt;
}
printf("%d ",i);
tt:;
}
getch();
}
3.2.
Bài tập luyện tập:
Bài 1: Viết chương trình nhập vào dòng điện I, điện áp V. Tính và in ra giá trị điện trở R.
I
V
R
Bài 2: Viết chương trình nhập vào giá trị điện dung C, điện cảm L và tần số f. Tính và in ra tổng trở Z
của mạch. Cho biết:
𝑍 = 𝑋𝐿 − 𝑋𝐶 Ω = 2. 𝜋. 𝑓. 𝐿 −
1
Ω
2. 𝜋. 𝑓. 𝐶
Bài 3: Viết chương trình nhập vào giá trị điện dung C, điện cảm L. Tính và in ra tần số cộng hưởng Fch
của mạch L C nối tiếp và trở kháng cuộn dây tại Fch. Cho biết:
𝐹𝑐ℎ =
1
2𝜋 𝐿𝐶
(𝐻𝑧)
Bài 4 : Viết chương trình tính tiền cước taxi với bảng giá như sau :
2 km đầu tiên : 20.000 đ.
8 km tiếp theo : 7.000đ/km.
10 km tiếp theo : 5.000đ/km.
Từ km thứ 21 : 3.000đ/km.
Dựa trên các thông số trên, viết chương trình có các chức năng sau :
Cho phép người sử dụng nhập vào các số km đi được.
Xuất ra màn hình tiền cước.
Bài 5 : Có 3 loại giấy bạc 1000đ, 2000đ, 5000đ. Viết chương trình in các phương án kết hợp các loại
giấy bạc trên cho ra 10000đ. VD: 10.000đ = 5000đ + 2x2000đ + 1000đ.
Bài 6 : Viết chương trình tính và in ra màn hình tổng nghịch đảo của n số tự nhiên đầu tiên (kết quả làm
tròn đến 10 chữ số lẻ).
Bài 7 : Viết chương trình tìm và in ra các số tự nhiên(<=1000) thỏa tính chất sau: giá trị của số đó bằng
tổng các ước số của nó. Ví dụ: 6 = 1 + 2 + 3.
Bài 2:
LẬP TRÌNH C CĂN BẢN - Mảng
I. MỤC ĐÍCH YÊU CẦU:
- Phân tích yêu cầu, xây dựng giải thuật và viết code theo yêu cầu.
- Xây dựng những chương trình cơ bản bằng ngôn ngữ C/C++.
- Hình thành kỹ năng phát hiện và sửa lỗi khi lập trình.
II. HƯỚNG DẪN LÝ THUYẾT:
2.1.
Mảng:
a) Khai báo mảng:
Cú pháp khai báo :
Mảng 1 chiều : type name[n];
tử của mảng.
Mảng nhiều chiều : type name[i1][i2]...[in];
VD : int a[4];
int b[3][3];
//name là tên mảng, type là kiểu dữ liệu của phần tử, n là số phần
//n là số chiều của mảng.
//mảng 1 chiều 4 phần tử, phần tử có kiểu interger.
//mảng 2 chiều 3x3.
b) Gán giá trị và truy xuất phần tử:
Muốn gán giá trị cho mảng, ta phải gán giá trị cho từng phần tử một. Để truy xuất đến từng phần
tử của mảng, ta dùng cú pháp :
name[i1][i2]…[in] = Value;
mảng.
//name là tên mảng, i1,i2,…,in là vị trí của phần tử trong
VD : b[0][0] = 5;
Gán trực tiếp: khi đã biết các giá trị phần tử của mảng, ta có thể gán giá trị trực tiếp cho mảng
mà không cần gán giá trị cho từng phần tử riêng lẻ bằng cách liệt kê tất cả các giá trị phần tử trong dấu
{...},các giá trị cách nhau bởi dấu ",".
name = {a1,a2,a3....}; //a1,a2,a3,...an lần lượt là giá trị của phần tử trong mảng.
hoặc
name = {{a1,...,an},{b1,...bn},{....}}; // a1...an lần lượt là giá trị của phần tử thuộc hàng
thứ 1 trong mảng nhiều chiều.
VD : int a[5] = {1,2,3,4,5};
int b[3][2] = {1,2,3,4,5,6};
int c[3][3] = {{1,2,3},{4,5,6},{5,6,7}};
Trong trường hợp mảng có nhiều phần tử, ta có thể gán giá trị cho mảng dùng cấu trúc lặp for:
VD :
Mảng số nguyên N 1 chiều có giá trị lần lượt từ 1->9:
int N[9];
for (int i = 0; i<9; i++)
{
N[i] = i+1;
}
Mảng số nguyên M (3x3) có giá trị lần lượt từ 1->9:
int M[3][3];
for (int i = 0; i<3; i++)
{
for (int j =0; j<3; j++)
{
M[i][j] = 3*i+j+1;
}
}
2.2.
Các bài toán trên mảng:
a) Xuất mảng ra màn hình:
Muốn xuất giá trị của mảng ra màn hình, ta phải xuất từng phần tử một. Do đó, ta sẽ dùng cấu
trúc lặp for:
VD :
Mảng số nguyên M (3x3) có giá trị lần lượt từ 1->9:
int M[3][3] = {1,2,3,4,5,6,7,8,9};
for (int i = 0; i<3; i++)
{
for (int j =0; j<3; j++)
{
printf("%d\t",M[i][j];
}
printf("\n");
}
Lệnh printf() thứ nhất để xuất giá trị của phần tử tại hàng thứ i, cột thứ j, "\t" để mỗi phần tử trên
cùng 1 hàng cách nhau 1 tab. Lệnh printf() thứ hai dùng để xuống hàng khi kết thúc 1 hàng của mảng.
b) Tìm kiếm phần tử của mảng:
Muốn xuất tìm kiếm vị trí hoặc giá trị của một phần tử trong mảng, ta tiến hành so sánh từng
phần tử của mảng với giá trị cần tìm kiếm:
VD :
Tìm kiếm vị trí của phần tử có giá trị bằng 5:
int M[3][3] = {1,2,3,4,5,6,7,8,9};
for (int i = 0; i<3; i++)
{
for (int j =0; j<3; j++)
{
if(M[i][j] == 5)
printf("Hang thu %d, cot thu %d",i,j);
}
}
b) Hoán đổi hai phần tử của mang:
Để hoán đổi hai phần tử của mảng, cần sử dụng thêm 1 biến tạm.
VD :
Hoán đổi 2 phần tử ở vị trí [0,0] và [1,1]:
int M[3][3] = {1,2,3,4,5,6,7,8,9};
int a; //biến tạm
a = M[0][0];
M[0][0] = M[1][1];
M[1][1] = M[0][0];
- Các yêu cầu trên mảng đều có thể được thực hiện thông qua ba bài toán cơ bản này.
III. BÀI TẬP THỰC HÀNH:
3.1.
Bài tập có hướng dẫn:
Tạo mới một project dùng phần mềm Visual Studio, nhập lại đoạn chương trình mẫu, biên dịch,
kiểm tra kết quả và nhận xét.
Bài 1 :
Viết chương trình tạo một mảng số nguyên 2 chiều 3x3 (3 hàng, 3 cột) có các giá trị phần tử là
giá trị ngẫu nhiên từ 0-10. Hiển thị mảng ra màn hình.
#include "stdio.h"
#include "conio.h"
#include "stdlib.h"
void main()
{
int M[3][3];
for (int i = 0;i<3;i++)
{
for(int j=0; j<3; j++)
{
M[i][j] = rand()%10;
}
}
printf("Mang 3x3 :\n");
for (int i = 0;i<3;i++)
{
for(int j=0; j<3; j++)
{
printf("%d\t",M[i][j]);
}
printf("\n");
}
getch();
}
Bài 2 :
Viết chương trình với các yêu cầu sau.
-
Cho phép người sử dụng nhập các giá trị cho một mảng số nguyên 3x3.
-
In ra màn hình mảng vừa nhập.
#include "stdio.h"
#include "conio.h"
#include "windows.h"
void main()
{
int M[3][3];
printf("Nhap mang:\n");
for (int i = 0;i<3;i++)
{
for(int j=0; j<3; j++)
{
printf("M[%d][%d] = ",i,j);
scanf("%d",&M[i][j]);
}
}
system("cls");
printf("Mang 3x3 :\n");
for (int i = 0;i<3;i++)
{
for(int j=0; j<3; j++)
{
printf("%d\t",M[i][j]);
}
printf("\n");
}
getch();
}
Bài 3 :
Viết chương trình giao diện console theo yêu cầu sau :
Yêu cầu :
- Tạo sẵn 1 ma trận số nguyên (3x3). Xuất ma trận ra màn hình.
- Tìm giá trị phần tử lớn nhất và nhỏ nhất. Xuất các giá trị này ra màn hình.
#include "stdio.h"
#include "conio.h"
#include "windows.h"
void main()
{
int M[3][3];
printf("Nhap mang:\n");
for (int i = 0;i<3;i++)
{
for(int j=0; j<3; j++)
{
printf("M[%d][%d] = ",i,j);
scanf("%d",&M[i][j]);
}
}
system("cls");
printf("Mang 3x3 :\n");
for (int i = 0;i<3;i++)
{
for(int j=0; j<3; j++)
{
printf("%d\t",M[i][j]);
}
printf("\n");
}
getch();
}
Bài 4 :
Viết chương trình giao diện console theo yêu cầu sau :
In ra màn hình hình tam giác vuông cân (cạnh góc vuông = 10) được tạo thành từ các kí tự dấu
sao (*).
#include "stdio.h"
#include "conio.h"
#include "windows.h"
void main()
{
int Min,Max;
char M[10][10];
for (int i = 0;i<10;i++)
{
for(int j=0; j<10; j++)
{
if(i>=j) M[i][j] = '*';
else
M[i][j] = ' ';
}
}
printf("Tam giac vuong can :\n");
for (int i = 0;i<10;i++)
{
for(int j=0; j<10; j++)
{
printf("%c",M[i][j]);
}
printf("\n");
}
getch();
}
3.2.
Bài tập luyện tập:
Bài 1: Viết chương trình tạo mảng 2 chiều 3 hàng 3 cột (giá trị nhập từ bàn phím).
a/ Hiển thị mảng vừa nhập ra màn hình.
b/ Cho phép người sử dụng nhập vào giá trị cần tìm kiếm. Nếu tìm thấy có phần tử thỏa mãn yêu cầu tìm
kiếm, in ra màn hình vị trí (hàng, cột) của phần tử đó. Nếu không tìm thấy yêu cầu nhập lại giá trị tìm
kiếm khác.
Bài 2: Viết chương trình tạo mảng 2 chiều 3 hàng 3 cột (giá trị nhập từ bàn phím). Hiển thị mảng vừa
nhập ra màn hình.
-
Cho phép người sử dụng chọn lựa: F1 để tính tổng , F2 để tính tích.
F1: Tính tổng giá trị các phần tử của mảng.
F2: Tính tích giá trị các phần tử của mảng.
Xuất giá trị tính toán ra màn hình.
Bài 3: Viết chương trình tạo mảng 1 chiều gồm 10 phần tử (giá trị nhập từ bàn phím). Hiển thị mảng
vừa nhập ra màn hình.
a/ Hiển thị mảng theo thứ tự ngược lại.
b/ Tìm giá trị min, max và giá trị trung bình của các phần tử trong mảng. Hiển thị các giá trị vừa tìm
được.
Bài 4 : Tạo sẵn 1 mảng số nguyên (3x3). Xuất mảng ra màn hình.
- Tìm giá trị phần tử xuất hiện nhiều nhất trong mảng. Xuất giá trị này ra màn hình.
Bài 5 : Tạo sẵn một dữ liệu (mảng 1 chiều 20 phần tử) có các giá trị ngẫu nhiên.
- Hãy tự tạo 1 mảng để lưu giữ các dữ liệu này. Hiển thị mảng ban đầu ra màn hình.
- Thực hiện lọc trung bình x3 theo công thức sau:
-
M[i] = (M[i-1] + M[i] + M[i+1])/3
M[0] = (M[0] + M[1])/2
M[20] = (M[20]+ M[19])/2
- Xuất giá trị của dữ liệu sau khi lọc ra màn hình.
Bài 6 : Viết chương trình tạo mảng 1 chiều a gồm 20 phần tử. Mỗi phần tử mang giá trị ngẫu nhiên
thuộc (-10, 10). Sắp xếp mảng theo thứ tự tăng dần của các phần tử. Hiển thị mảng sau khi sắp xếp ra
màn hình.
Bài 7:
Viết chương trình cho phép người dùng nhập giá trị cho 2 mảng số nguyên A,B (3x3).
- Tính AxB, BxA và hiển thị kết quả ra màn hình.