jablonec
Rìu Chiến Chấm
Mình đang tập tành lập trình nên hơi ngu các bác ạ. Các bác cho em hỏi tại sao khi khai báo hàm float cho mảng lại báo lỗi như thế này ạ. Em cảm ơn nhiều.
C:\Users\TC\OneDrive\Documents\SLN\main.cpp|11|error: invalid types 'float [100][float]' for array subscript|
C:\Users\TC\OneDrive\Documents\SLN\main.cpp|13|error: invalid types 'float [100][float]' for array subscript|
C:\Users\TC\OneDrive\Documents\SLN\main.cpp|13|error: invalid types 'float [100][float]' for array subscript|
Đề bài toán là:
Tìm số bé nhất của một dãy số. In ra số này và vị trí của nó trong dãy. Chương trình sử dụng mảng a để lưu dãy số, n là số phần tử thực sự trong dãy, min lưu số bé nhất tìm được và k là vị trí của min trong dãy. min được khởi tạo bằng giá trị đầu tiên (a[0]), sau đó lần lượt so sánh với các số hạng còn lại, nếu gặp số hạng nhỏ hơn, min sẽnhận giá trị của số hạng này. Quá trình so sánh tiếp tục cho đến hết dãy. Vì số số hạng của dãy là biết trước (n), nên số lần lặp cũng được biết trước (n-1 lần lặp), do vậy chúng ta sẽ sử dụng câu lệnh for cho ví dụ này.
Code:
#include <iostream>
#include<conio.h>
using namespace std;
int main()
{
float a[100],i,n,min,k;
cout <<"Nhap so phan tu cua day:"; cin>>n;
for(i=0;i<n;i++) {cout <<"a["<<i<<"]="; cin>>a;}
min=a[0]; k=0;
for(i=1;i<n;i++) if(a<min) {min=a; k=i;}
cout<<" So be nhat la: "<<min<<", Tai vi tri: "<<k;
}
C:\Users\TC\OneDrive\Documents\SLN\main.cpp|11|error: invalid types 'float [100][float]' for array subscript|
C:\Users\TC\OneDrive\Documents\SLN\main.cpp|13|error: invalid types 'float [100][float]' for array subscript|
C:\Users\TC\OneDrive\Documents\SLN\main.cpp|13|error: invalid types 'float [100][float]' for array subscript|
Đề bài toán là:
Tìm số bé nhất của một dãy số. In ra số này và vị trí của nó trong dãy. Chương trình sử dụng mảng a để lưu dãy số, n là số phần tử thực sự trong dãy, min lưu số bé nhất tìm được và k là vị trí của min trong dãy. min được khởi tạo bằng giá trị đầu tiên (a[0]), sau đó lần lượt so sánh với các số hạng còn lại, nếu gặp số hạng nhỏ hơn, min sẽnhận giá trị của số hạng này. Quá trình so sánh tiếp tục cho đến hết dãy. Vì số số hạng của dãy là biết trước (n), nên số lần lặp cũng được biết trước (n-1 lần lặp), do vậy chúng ta sẽ sử dụng câu lệnh for cho ví dụ này.
Code:
#include <iostream>
#include<conio.h>
using namespace std;
int main()
{
float a[100],i,n,min,k;
cout <<"Nhap so phan tu cua day:"; cin>>n;
for(i=0;i<n;i++) {cout <<"a["<<i<<"]="; cin>>a;}
min=a[0]; k=0;
for(i=1;i<n;i++) if(a<min) {min=a; k=i;}
cout<<" So be nhat la: "<<min<<", Tai vi tri: "<<k;
}