Einführung
In diesem Lab lernen Sie, wie Sie eine lineare Gleichung der Form ax + b = 0 mit C-Programmierung lösen. Sie beginnen damit, die Koeffizienten a und b vom Benutzer einzulesen, berechnen dann die Lösung x mit der Formel x = -b/a, wobei sichergestellt wird, dass der Koeffizient a nicht Null ist. Schließlich geben Sie die Lösung aus oder weisen darauf hin, dass keine Lösung existiert.
Das Lab behandelt die grundlegenden Konzepte algebraischer Ausdrücke und deren Implementierung in C. Am Ende dieses Labs haben Sie ein solides Verständnis dafür, wie Sie einfache lineare Gleichungen programmatisch lösen.
Koeffizienten a und b einlesen
In diesem Schritt lernen Sie, wie Sie die Koeffizienten a und b zum Lösen einer linearen Gleichung in C einlesen. Wir erstellen ein einfaches Programm, das den Benutzer nach den Koeffizienten fragt und diese in Variablen speichert.
Erstellen Sie zunächst eine neue C-Datei im Projektverzeichnis:
cd ~/project
nano linear_equation.c
Geben Sie nun den folgenden Code ein, um die Koeffizienten einzulesen:
#include <stdio.h>
int main() {
double a, b;
// Benutzer nach dem Koeffizienten a fragen
printf("Geben Sie den Koeffizienten a ein (darf nicht Null sein): ");
scanf("%lf", &a);
// Benutzer nach dem Koeffizienten b fragen
printf("Geben Sie den Koeffizienten b ein: ");
scanf("%lf", &b);
// Die eingegebenen Koeffizienten ausgeben
printf("Koeffizient a: %.2f\n", a);
printf("Koeffizient b: %.2f\n", b);
return 0;
}
Kompilieren und ausführen Sie das Programm:
gcc linear_equation.c -o linear_equation
./linear_equation
Beispielausgabe:
Geben Sie den Koeffizienten a ein (darf nicht Null sein): 2
Geben Sie den Koeffizienten b ein: 4
Koeffizient a: 2.00
Koeffizient b: 4.00
Zerlegung des Codes:
- Wir verwenden
double, um Dezimalwerte für die Koeffizienten zuzulassen. printf()wird verwendet, um den Benutzer nach der Eingabe zu fragen.scanf()liest die Benutzereingabe und speichert sie in den Variablenaundb.- Wir geben die eingegebenen Koeffizienten aus, um zu bestätigen, dass sie korrekt gelesen wurden.
Compute x = -b/a (Check if a ≠ 0)
In this step, you will modify the previous program to compute the solution of the linear equation ax + b = 0, with a special focus on handling the case when a is zero.
Open the previous file and update the code:
cd ~/project
nano linear_equation.c
Replace the contents with the following code:
#include <stdio.h>
int main() {
double a, b, x;
// Prompt user to enter coefficient a
printf("Enter coefficient a (must not be zero): ");
scanf("%lf", &a);
// Check if a is zero
if (a == 0) {
printf("Error: Coefficient 'a' cannot be zero.\n");
return 1;
}
// Prompt user to enter coefficient b
printf("Enter coefficient b: ");
scanf("%lf", &b);
// Compute solution x
x = -b / a;
// Print the solution
printf("Solution of the equation %.2fx + %.2f = 0:\n", a, b);
printf("x = %.2f\n", x);
return 0;
}
Compile and run the program:
gcc linear_equation.c -o linear_equation
./linear_equation
Example output for a valid input:
Enter coefficient a (must not be zero): 2
Enter coefficient b: 4
Solution of the equation 2.00x + 4.00 = 0:
x = -2.00
Example output for an invalid input (a = 0):
Enter coefficient a (must not be zero): 0
Error: Coefficient 'a' cannot be zero.
Key points in this code:
- We add a check to ensure
ais not zero before computing the solution - If
ais zero, we print an error message and exit the program - The solution
xis computed using the formula x = -b/a - We use
%.2fto format the output to two decimal places
Berechnung von x = -b/a (Prüfung, ob a ≠ 0)
In diesem Schritt erweitern Sie das vorherige Programm, um die Lösung der linearen Gleichung ax + b = 0 zu berechnen, wobei Sie sich besonders auf den Fall konzentrieren, wenn a gleich Null ist.
Öffnen Sie die vorherige Datei und aktualisieren Sie den Code:
cd ~/project
nano linear_equation.c
Ersetzen Sie den Inhalt durch folgenden Code:
#include <stdio.h>
int main() {
double a, b, x;
// Benutzer nach dem Koeffizienten a fragen
printf("Geben Sie den Koeffizienten a ein (darf nicht Null sein): ");
scanf("%lf", &a);
// Überprüfen, ob a gleich Null ist
if (a == 0) {
printf("Fehler: Der Koeffizient 'a' darf nicht Null sein.\n");
return 1;
}
// Benutzer nach dem Koeffizienten b fragen
printf("Geben Sie den Koeffizienten b ein: ");
scanf("%lf", &b);
// Berechne die Lösung x
x = -b / a;
// Geben Sie die Lösung aus
printf("Lösung der Gleichung %.2fx + %.2f = 0:\n", a, b);
printf("x = %.2f\n", x);
return 0;
}
Kompilieren und ausführen Sie das Programm:
gcc linear_equation.c -o linear_equation
./linear_equation
Beispielausgabe für eine gültige Eingabe:
Geben Sie den Koeffizienten a ein (darf nicht Null sein): 2
Geben Sie den Koeffizienten b ein: 4
Lösung der Gleichung 2.00x + 4.00 = 0:
x = -2.00
Beispielausgabe für eine ungültige Eingabe (a = 0):
Geben Sie den Koeffizienten a ein (darf nicht Null sein): 0
Fehler: Der Koeffizient 'a' darf nicht Null sein.
Wichtige Punkte in diesem Code:
- Wir fügen eine Überprüfung hinzu, um sicherzustellen, dass
anicht Null ist, bevor die Lösung berechnet wird. - Wenn
aNull ist, geben wir eine Fehlermeldung aus und beenden das Programm. - Die Lösung
xwird mithilfe der Formel x = -b/a berechnet. - Wir verwenden
%.2f, um die Ausgabe auf zwei Dezimalstellen zu formatieren.
Zusammenfassung
In diesem Labor haben Sie gelernt, wie man die Koeffizienten a und b zum Lösen einer linearen Gleichung in C liest. Sie haben ein einfaches Programm erstellt, das den Benutzer auffordert, die Koeffizienten einzugeben, und diese in Variablen speichert. Sie haben auch gelernt, wie man die Lösung der linearen Gleichung ax + b = 0 berechnet, wobei Sie sich besonders auf den Fall konzentriert haben, wenn a gleich Null ist. Das Programm prüft, ob a gleich Null ist, und gibt eine Fehlermeldung aus, wenn dies der Fall ist. Andernfalls berechnet es die Lösung x = -b/a und gibt sie aus.



