01/10/2018, 08:57

Tại sao code bị lỗi?

SilverBullet viết 11:11 ngày 01/10/2018

Bạn nên ghi rõ ra là lỗi gì chứ. Mà trong hàm main nó có hiểu T là cái gì đâu? Với cả thường khi viết hàm người ta chỉ viết

    int T(int a, int b){
        return a + b;
    }

rồi cin >> a >> b trong hàm main thì hay hơn.

BX136 viết 11:02 ngày 01/10/2018

cái hàm T có 2 tham số truyền vào a và b
ở dưới main không thấy hàm T được truyền vào gì cả thì sao if(T == 4) được ?

Trần Hoàn viết 11:07 ngày 01/10/2018

int T(int a, int b) nó là hàm số và a, b khai báo ở đây là các biến cục bộ.
khi sử dụng, ta gọi T(a, b) thì sẽ nhập a, b rồi trả về kết quả là a+b
tương tự, nếu ta gọi `T(a, n) thì sẽ nhập a, n rồi trả về kết quả là a+n

Ngoài ra, bạn khai báo hàm main()int thì phải có kết quả trả về (return).

Bạn có thể viết lại chương trình để hiểu hơn về hàm như sau:

#include <iostream>
#include <conio.h>
#include "stdafx.h"
using namespace std;

int T(int Input1, int Input2)
{
    cin >> Input1 >> Input2;
    return Input1 + Input2;
}

void main()
{
    int a, b;
    if (T(a, b) == 4)
        cout << "abc\na= " << a << "\nb= " << b;
    int c;
    if (T(a, c) == 4)
        cout << "abc\na= " << a << "\nb= " << b << "\nc= " << c;
    _getch();
}
Nguyễn Văn Hùng viết 11:11 ngày 01/10/2018

Bạn thử viết như thế này xem được không?

int main()
{
      int a, b;
      if (T(a, b) == 4)
              count <<  "abc";
      system("pasuse");
}
Bài liên quan
0