#include <iostream>
#include<stdio.h>
Using namespace std;
void NhapMang(int a[], int n){
for(int i = 0; i < n; i++){
printf("\nNhap a[%d] = ",i);
scanf("%d", &a[i]);
}
}
void XuatMang(int a[], int n){
for(int i = 0; i < n; i++){
printf("%d", a[i]);
}
}
void TangDan(int a[], int n){
int tg;
for(int i = 0; i < n - 1; i++){
for(int j = i + 1; j < n; j++){
if(a[i] > a[j]){
tg = a[i];
a[i] = a[j];
a[j] = tg;
}
}
}
}
void GiamDan(int a[], int n){
int tg;
for(int i = 0; i < n - 1; i++){
for(int j = i + 1; j < n; j++){
if(a[i] < a[j]){
tg = a[i];
a[i] = a[j];
a[j] = tg;
}
}
}
}
int main(){
int a[100];
int n;
printf("\nNhap so luong phan tu n = ");
do{
scanf("%d", &n);
if(n <= 0){
printf("\nNhap lai n = ");
}
}while(n <= 0);
NhapMang(a, n);
printf("\nMang vua nhap la: ");
XuatMang(a, n);
TangDan(a, n);
printf("\nMang sap xep tang dan la: ");
XuatMang(a, n);
GiamDan(a, n);
printf("\nMang sap xep giam dan la: ");
XuatMang(a, n);
}
Giúp giải thích code
có cú pháp nào, lệnh nào bạn chưa hiểu?
từ đầu đến cuối luôn á, mình hiểu sương sương
Cậu hiểu gì thì giải thích cho bọn tớ được không?
Bọn tớ sẽ check và giúp cậu hiểu tiếp.
Nhìn chung, nếu cậu nói “không hiểu từ đầu tới cuối”, bọn tớ sẽ hiểu là “tôi đang lười, ai giúp tôi giải thích code này làm gì đi, để tôi sống sót qua ngày mai khi thầy giáo hỏi. Cảm ơn!”. Không có chuyện cậu không hiểu từ đầu tới cuối (nếu có, cậu cần phải học lại các cú pháp cơ bản trước khi nói tiếp), và bọn tớ sẽ không thể giúp cậu nếu cậu lười biếng vậy
Ai đó có thể giải thích cho cậu đoạn code này tại thời điểm này, cơ mà cậu không thể làm như vậy khi ra ngoài làm việc đâu
Cậu có 1 ngày để giải thích rõ ràng cậu đã hiểu gì. Sau 1 ngày, topic này sẽ bị đóng lại vĩnh viễn. Nếu bạn nào có nhã ý giúp bạn ấy, vui lòng reply trong thời hạn này.
thì là mình nhập n số lượng phần tử trong hàm sau đó chuyển sang module nhapmang, dùng for có n là giới hạn nhập vào mảng a rồi in lại mảng vừa nhập và xét tăng dần giảm dần. mình hiểu được như thế
Rồi, cậu có thể kể chi tiết cậu chưa hiểu cái gì được không? Tớ thấy cậu đã hiểu từ đầu tới cuối rồi mà?
mấy cái dòng điều kiện bên trong á
này nè cậu :
if(a[i] > a[j]){
tg = a[i];
a[i] = a[j];
a[j] = tg;
đây chỉ là so sánh và gán thôi, cú pháp này thì có gì lạ đâu?
Đó là cách implement swap 2 phần tử trong truyền thuyết
Cậu thử tự giải thích xem nó swap cái gì, và swap thế nào hộ tớ được không?
Thớt xem thuật toán Selection Sort (sắp xếp chọn), vì luồng dữ liệu không khác.