Nhờ mọi người chỉ dẫn viết hàm xuất

Mọi người ơi chỉ mình cách viết hàm xuất đi, cái hàm xuất này mình chép từ 1 đứa bạn nhưng khi mình gõ thì nó báo lỗi

#include<stdio.h>
#include<conio.h>
void nhap( float &a, float &b);
int tinh( float a, float b, float &x);
void xuat( float x);
void main()
{
	float a,b,x;
	nhap(a,b);
   	tinh(a,b,x);
	xuat(x);
	getch();
}
void nhap( float &a, float &b)
{
	printf("nhap a va b");
	scanf("%f%f",&a,&b);
}
int 

tinh( float a, float b, float &x)
{
	if(a==0)
		if(b==0)
			return (2);
		else 
			return (0);
	else 
		x=-b/a;

}
void xuat(int tinh, float x)
{

	if( tinh==1)
		printf(" phuong trinh vo so nghiem");
	else if( tinh==0)
		printf(" phuong trinh vo nghiem");
	else 
		printf(" nghiem cua phuong trinh la%.2f.\n",x);

}

Bạn muốn xuất cái gì?

xuất mấy cái “phuong trinh vo nghiem”, " phuong trinh vo so nghiem"," nghiem cua phuong trinh la,"

Thì bạn phải theo điều kiện của a, b, c để in, như vậy không cần phải viết hàm riêng đâu.

if (delta == 0) {
    x = b / (2 *a);
    printf('có 1 nghiệm x = %f', x);
}
...

không được bạn ơi thầy mình yêu câu là phải viết hàm riêng nhưng đến hàm xuất mình không biết viết code ntn để nó xuất ra theo điều kiện hết

Bạn viết hàm tính và hàm xuất giống hệt nhau, ai làm gì được bạn nào?

ý bạn nói là gộp hàm tính và hàm xuất lại với nhau hả

Đúng rồi, vừa tính vừa viết luôn. Tách ra xử lí khó lắm.

mình cũng viết vậy rồi nhưng mà thầy bắt buộc phải viết theo chương trình con bạn à, nghĩa là phải có một hàm nhập một hàm tính và một hàm xuất ấy.

Kệ thầy.

void xuat() {
    // vừa tính vừa in
}

int tinh() {
    return 0; // chả có gì ở đây cả ahihi
}

kệ thầy thì không điểm kệ mình sao:joy:

Thầy bảo viết hàm riêng, mà thầy có bảo nội dung 2 hàm đâu :smile: ngại gì vết bẩn, miễn là ra kết quả :v

bạn chỉ mình cách viết hàm xuất trong trường hợp này đi theo như kiểu viết của mình ấy

Có 1 biến là lưu lại số nghiệm của phương trình như bạn đã làm.
1 biến x0 lưu nghiệm kép; 2 biến x1, x2 lưu 2 nghiệm phân biệt; hoặc nếu bạn thích thì không cần đặt biến x0, chỉ cần 2 biến x1, x2 thôi, kiểm tra nghiệm kép bằng cách kiểm tra xem x1 có bằng x2 hay không.

phương trình ax+b=0 mà bạn

[spoiler]Bài này mà cũng phải viết 2 hàm riêng à :expressionless: thua :v[/spoiler]

Thì tương tự như mình đã nói thôi, thay vì dùng 2 biến thì chỉ dùng 1 biến x0 để lưu nghiệm.

có anh chỉ mình là if(a=0) thì kiểm tra bằng b=0. Nếu b=0 thì return 1, else return 0. Xong đến đoạn hàm xuất thì nếu giá trị trả về cho hàm là 1 thì in pt vo so nghiem, nếu giá trị trả về là 0 thì pt vo nghiemj ngược lại in nghiệm pt ra

Hàm tính bạn định return gì nếu a != 0?

nếu a!= 0 thì x=-b/a

Hình như bạn vẫn chưa hiểu người hướng dẫn bạn muốn nói gì.

  • Hàm tính của bạn dùng để làm gì? Bạn định chia các trường hợp như thế nào? Và mỗi trường hợp bạn định return ra cái gì?
  • Hàm xuất bạn định sử dụng kết quả gì của hàm tính?
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?