cho một tập hợp A={1;2;3;4;5;6;7;9}làm thế nào máy tính có thể nhận ra dc đâu la số lớn nhất . Xin trả lời giùm !thank!
#include <stdio.h> int main() { int a[] = {1,2,3,4,5,6,7,8,9}; int i; int nSize = (sizeof(a)/sizeof(a[0])); int nMax = a[0]; for (i=1; i<nSize; ++i) { if (a > nMax) nMax = a; } printf ("Max = %d\n", nMax); return 0; }
@Nood : đúng là nodd thiệt Lỡ người ta học pascal hay hợp ngữ sao Giải thuật : Đưa tập hợp vào mảng. Duyệt từ phần tử thứ 1 đến phần tử cuối cùng So sánh từng cặp theo đôi một nếu ptử kế sau nhỏ hơn ptử hiện tại thì để nguyên, tiếp tục nếu lớn hơn hoặc bằng thì gán giá trị mới vào tiếp tục đến hết sẽ có phần từ max
Xạo quá ! viết lung tung đừng có nghe lởi nó thiếu roài Cái tập hợp đó nó được lưu trong máy tính là 1 mảng đầu tiên ta lấy một biến bất kỳ có ten là max chằng hạn ,sau đó lây mã gán bằng phần tử đầu tiên của mảng sau đó cho chạy vòng lặp để duyệt bắt đầu từ phần tử thứ 2 của mảng trờ đi cho đến hết cho một biến i chạy trong khoảng từ 2 ---> số phần tử của mảng so sánh phần tử thứ i với max ,nếu như phần tử thứ i>max thì Max sẽ bị gán bằng phàn tử thứ i khi duyệt xong hết dãy số thì số lớn nhất nằn trong biến Max