Lập trình c cơ bản: viết 2 hàm giải phương trình bậc 1 và bậc 2

Điều kiện pn sai tùm lum và cả đống lỗi nữa rồi.
Bạn tham khảo code này xem sao :slight_smile:

#include <stdio.h>
#include <conio.h>
#include <math.h>

void LuaChon(int &z);
void GiaiPTBac1(int a, int b);
void GiaiPtBac2(float a, float b, float c);


void Nhap(int &n)
{
	printf("Nhap lan luot cac so cho truoc giai pt = ");
	scanf("%d", &n);
}

void LuaChon(int &z)
{
	int a, b, c;
	printf("************************Menu************************");
	printf("\n1. Giai Pt bac 1\n2. Giai Pt bac 2\nMoi ban Nhap vao lua chon: ");
	scanf("%d", &z);
	if (z == 1)
	{
		Nhap(a); Nhap(b);	
		GiaiPTBac1(a, b);
	}
	else 
	{
		Nhap(a); Nhap(b); Nhap(c);
		GiaiPtBac2(a, b, c);
	}
}

void GiaiPTBac1(int a, int b)
{
	float x;
	if (a == 0)
	{
		if (b == 0)
		{
			printf("\vo so nghiem");
		}
		else 
		{
			printf("\nVo nghiem");
		}
	}
	else 
	{
		x = -b / (float)a;
		printf("x = %f", x);
	}
}

void GiaiPtBac2(float a, float b, float c)
{
	float delta;
	delta = (b * b) - (4 * a * c);
	if (delta > 0)
	{
		printf("sqrt of %f = %f\n", delta, sqrt(delta));
		float x1;
		x1 = (-b + sqrt(delta)) / (2 * a);
		printf("x1 = %f\n", x1);
		float x2;
		x2 = (-b - sqrt(delta)) / (2 * a);
		printf("x2 = %f\n", x2);
	}
	else if	(delta == 0)
	{
		float x;
		x = -b / (2 * a);
		printf("co ngiem kep la %f", x);
	}
	else 
	{
		printf("vo nghiem");
	}
}

int main()
{	
	int n, a, b, z;
	float x; 
	LuaChon(z);

	
	getch();
	return 0;
}


83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?