Đề tài: hỏi về hàm

1. Awaiting Email Confirmation
Ngày gia nhập
09 2008
Bài viết
16

hỏi về hàm

cho em hỏi hàm sau
void doit (float,char,float&,char&)
may' cai' dau' && phia' sau float va char la gi thế các bác, đọc sách nhưng chưa clear lắm.
thanks

Code:
```#include <iostream>
using namespace std;
//function used
float computeSum(int) ; // In - number of data items

//Computes average of data
float computeAve(int,float);
void printSumAve( int,float,float );
int main()
{
int numItems;
float sum;
float average;
//Read the number of items to process
cout << " Enter the number of items to process : " ;
cin >> numItems;
//compute the sum of the data
sum = computeSum(numItems);
average = computeAve( numItems,sum);
printSumAve(numItems,sum,average);
return 0 ;
}
// insert definitions for functions compute sum, comute ave
// and printsumAve here
float computeSum(int numItems)
{
//local data ...
float item;
float sum;

// read each data item and accumulate it in sum
sum = 0.0;
for (int count = 0;count <  numItems ; count ++ )
{
cout << "Enter a number to be added : ";
cin >> item;
sum= sum + item;
}
//end for
return sum;
}//end computeSum
float computeAve
(int numItems,float sum)
{
//compute the average of the data
if (numItems< 1)
{
cout << "Invialid value for numItems = " << numItems<< endl;
cout << endl;
cout << "Aveage not computed. " << endl;
return 0.0; // return for invalid input
}//end if
return sum/ numItems;
}

void printSumave
(int numItems,float sum,float average)
{
if (numItems > 0)
{
cout << " The number of items is" << numItems << endl;
cout << " The sum of the data is " << sum << endl;
cout << " The average of the data is " << average << endl;
}
else
{
cout << " Invalid number of items = " << numItems<< endl;
cout << " Sum and average are not defined . " << endl;
cout << " No printing done. Execution terminated " << endl;
}
}```
them cái program này luôn, nó báo lỗi linking với hàm display
Đã được chỉnh sửa lần cuối bởi Se7Olutionyg : 23-10-2008 lúc 08:47 AM.

2. Cái đó là truyền tham chiếu, nếu muốn chỉnh sữa giá trị của biến truyền vào thì có 2 cách :
- truyền tham chiếu
- truyền con trỏ
Code trên cơ bản cho nên tui đưa ví dụ, cậu coi đó mà sữa vì cậu mới học nên tui sữa cho cậu cũng bằng 0 :
C++ Code:
1. #include <iostream>
2.
3. using namespace std;
4.
5. void passByPointer( int* N ) {
6.     *N = 11;
7. }
8.
9. void passByReference( int& N ) {
10.     N = 10;
11. }
12.
13. void passByValue( int N ) {
14.     N = 10;
15. }
16.
17. int main()
18. {
19.     int N;
20.
21.     passByValue( N );
22.     cout << N << endl;
23.
24.     passByReference( N );
25.     cout << N << endl;
26.
27.     passByPointer( &N );
28.     cout << N << endl;
29.
30.     return 0;
31. }
- Chú ý khi ở vị trí tham số truyền vào và khi nó nằm bên trái 1 vế tức là
C++ Code:
1. void passByReference( int& N ) {
Dấu & hiểu là tham chiếu đến N.
Hoặc :
C++ Code:
1. int& ref_toN = N;
Nhưng khi nó ở vế phải :
C++ Code:
1. int* pointer = &N;
thì & hiểu là địa chỉ của N.

3. Banned
Ngày gia nhập
02 2008
Bài viết
1,009
Code:
```#include <iostream>
using namespace std;
//function used
float computeSum(int a) ; // In - number of data items

//Computes average of data
float computeAve(int a,float b);
void intong(int numItems,float sum,float average)
{
if (numItems > 0)
{
cout << " The number of items is" << numItems << endl;
cout << " The sum of the data is " << sum << endl;
cout << " The average of the data is " << average << endl;
}
else
{
cout << " Invalid number of items = " << numItems<< endl;
cout << " Sum and average are not defined . " << endl;
cout << " No printing done. Execution terminated " << endl;
}
}
int main()
{
int numItems;
float sum;
float average;
//Read the number of items to process
cout << " Enter the number of items to process : " ;
cin >> numItems;
//compute the sum of the data
sum = computeSum(numItems);
average = computeAve( numItems,sum);
intong(numItems,sum,average);
return 0 ;
}
// insert definitions for functions compute sum, comute ave
// and printsumAve here
float computeSum(int numItems)
{
//local data ...
float item;
float sum;

// read each data item and accumulate it in sum
sum = 0;
for (int count = 0;count <  numItems ; count ++ )
{
cout << "Enter a number to be added : ";
cin >> item;
sum= sum + item;
}
//end for
return sum;
}//end computeSum
float computeAve(int numItems,float sum)
{
//compute the average of the data
if (numItems< 1)
{
cout << "Invialid value for numItems = " << numItems<< endl;
cout << endl;
cout << "Aveage not computed. " << endl;
return 0; // return for invalid input
}//end if
return sum/numItems;
}```
hic,cậu chọn đâu chọn tài thế,chọn ngay tên của hàm có sẵn để đặt tên
với cả cậu khai báo biến cho hàm cũng linh tinh quá,vì thế loạn lên

4. hic,cậu chọn đâu chọn tài thế,chọn ngay tên của hàm có sẵn để đặt tên
với cả cậu khai báo biến cho hàm cũng linh tinh quá,vì thế loạn lên
Hàm nào có sẵn vậy em ?

5. Thành viên mới
Ngày gia nhập
09 2008
Bài viết
28
Nguyên bản được gửi bởi Se7Olutionyg
cho em hỏi hàm sau
void doit (float,char,float&,char&)
may' cai' dau' && phia' sau float va char la gi thế các bác, đọc sách nhưng chưa clear lắm.
thanks

Code:
```#include <iostream>
using namespace std;
//function used
float computeSum(int) ; // In - number of data items

//Computes average of data
float computeAve(int,float);
void printSumAve( int,float,float );
int main()
{
int numItems;
float sum;
float average;
//Read the number of items to process
cout << " Enter the number of items to process : " ;
cin >> numItems;
//compute the sum of the data
sum = computeSum(numItems);
average = computeAve( numItems,sum);
printSumAve(numItems,sum,average);
return 0 ;
}
// insert definitions for functions compute sum, comute ave
// and printsumAve here
float computeSum(int numItems)
{
//local data ...
float item;
float sum;

// read each data item and accumulate it in sum
sum = 0.0;
for (int count = 0;count <  numItems ; count ++ )
{
cout << "Enter a number to be added : ";
cin >> item;
sum= sum + item;
}
//end for
return sum;
}//end computeSum
float computeAve
(int numItems,float sum)
{
//compute the average of the data
if (numItems< 1)
{
cout << "Invialid value for numItems = " << numItems<< endl;
cout << endl;
cout << "Aveage not computed. " << endl;
return 0.0; // return for invalid input
}//end if
return sum/ numItems;
}

void printSumave
(int numItems,float sum,float average)
{
if (numItems > 0)
{
cout << " The number of items is" << numItems << endl;
cout << " The sum of the data is " << sum << endl;
cout << " The average of the data is " << average << endl;
}
else
{
cout << " Invalid number of items = " << numItems<< endl;
cout << " Sum and average are not defined . " << endl;
cout << " No printing done. Execution terminated " << endl;
}
}```
them cái program này luôn, nó báo lỗi linking với hàm display
Bài này của cậu khai báo hàm "printSumave" sai chính tả rồi. Cậu phải sửa lại là "printSumAve" thì nó sẽ chạy ngon lành.

Quyền hạn của bạn

• Bạn không thể gửi đề tài mới
• Bạn không thể gửi bài trả lời
• Bạn không thể gửi các đính kèm
• Bạn không thể chỉnh sửa bài viết của bạn