Ganzzahldivision in C

Waqar Aslam 12 Oktober 2023
  1. Ganzzahldivision in C
  2. Regeln für Integer- und Float-Division in C
  3. Ganzzahldivision und der Modulo-Operator in C
Ganzzahldivision in C

Dieser Artikel zeigt, wie die ganzzahlige Divisionsoperation in C funktioniert.

Ganzzahldivision in C

In C können wir eine ganze Zahl dividieren, indem wir die Divisionsoperation mit einer anderen ganzen Zahl oder mit jeder anderen Art von Variable ausführen. Die Variable, die in Teile geteilt wird, ist der Dividende, während die Variable, die geteilt wird, der Divisor ist.

Wenn wir eine ganze Zahl durch sich selbst dividieren, erhalten wir zwei Zahlen: den Quotienten und den Rest. Die Regeln für die Division von Zahlen mit ganzen Zahlen in C sind denen für die Verwendung von Arithmetik sehr ähnlich.

Wenn wir über Division nachdenken, sehen wir oft den Prozess, der zu einer Antwort führt, die eine Bruchkomponente (ein Gleitkomma-Datentyp) haben könnte. Die Fließkomma-Division ist der Name für diese spezielle Art der Division.

Wenn jedoch beide Operanden vom Datentyp Integer sind, wird eine spezielle Art der Division durchgeführt, die sich je nach Programmiersprache unterschiedlich verhalten kann. Diese Art der Division wird als ganzzahlige Division bezeichnet.

Nehmen wir als Beispiel 7/5, wo beide Operanden vom Datentyp Integer sind. Der Ausdruck ergibt 1, und es gäbe keinen Bruchteil.

Auch diese Art der Division ist als ganzzahlige Division bekannt.

Das Ergebnis der Division ganzer Zahlen ist selbst eine ganze Zahl. Nehmen Sie zum Beispiel die Gleichung 7/4, die den Wert 1 ergibt, bzw. 17/5, die den Wert 3 ergibt.

Der Restoperator, bezeichnet mit %, ist in C verfügbar und gibt den Wert zurück, der nach einer ganzzahligen Division erhalten wird. Der Restoperator ist eine Art ganzzahliger Operator, der nur für ganzzahlige Operanden verwendet werden kann.

Nach der Division von x durch y ist das Ergebnis der Gleichung x % y das Residuum. Daher ergibt 7 % 4 3, während 17 % 5 2 ergibt.

Regeln für Integer- und Float-Division in C

integer / integer = integer
float / integer = float
integer / float = float

Dividiere Integer durch einen Integer-Wert in C

Das folgende Beispiel eines Programms dividiert einen ganzzahligen Wert durch einen anderen ganzzahligen Wert, wodurch ein ganzzahliger Wert als endgültige Ausgabe erzeugt wird.

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

int main() {
  int a = 3;
  int b = 15;
  int result;

  result = (b / a);
  printf("%d", result);
  return 0;
}

Ausgang:

5

Teilen Sie Float durch einen ganzzahligen Wert in C

Der folgende Beispielcode dividiert einen Gleitkommawert durch einen ganzzahligen Wert, wodurch ein Gleitkommawert als endgültige Ausgabe erzeugt wird.

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

int main() {
  int a = 3;
  float b = 15.50;
  double result;

  result = (b / a);
  printf("%f", result);
  return 0;
}

Ausgang:

5.166667

Dividiere Integer durch einen Float-Wert in C

Der folgende Beispielcode dividiert einen ganzzahligen Wert durch einen Gleitkommawert, wodurch ein Gleitkommawert als endgültige Ausgabe erzeugt wird.

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

int main() {
  int a = 15;
  float b = 3.2;
  double result;

  result = (a / b);
  printf("%f", result);
  return 0;
}

Ausgang:

4.687500

Ganzzahldivision und der Modulo-Operator in C

Es ist die zweite Hälfte der Lösung der Frage zur Division ganzer Zahlen.

Das Symbol % kennzeichnet diesen Operator; sein richtiger Name ist der Perzentil-Operator. Der Modulo-Operator ist eine neue Ergänzung zu den arithmetischen Operatoren in C und kann gleichzeitig mit zwei verschiedenen Operanden arbeiten.

Um ein Ergebnis zu ermitteln, dividiert es den Zähler durch den angegebenen Nenner. Anders ausgedrückt ergibt sich nach der ganzzahligen Division ein Rest.

Aus diesem Grund ist der Rest immer und nur immer eine ganze Zahl. Wenn kein Rest verbleibt, ist der Rest gleich Null (0).

Berechnen des Quotienten und des Rests durch ganzzahlige Division

Zunächst müssen wir innerhalb der Funktion main() des Datentyps int vier Variablen erstellen und ihnen die Namen dividend, divisor, quotient und remainder geben.

int main() {
  int dividend;
  int divisor;
  int quotient;
  int remainder;
}

Jetzt zeigen wir dem Benutzer eine Nachricht an, in der er aufgefordert wird, zwei Werte einzugeben, die dividend und den divisor, und diese Werte dann in den entsprechenden Variablen zu speichern.

printf("Enter dividend: ");
scanf("%d", &dividend);
printf("Enter divisor: ");
scanf("%d", &divisor);

Berechnen Sie den Quotienten, indem Sie dividend durch divisor dividieren. Berechnen Sie auch den Rest durch dividend Modulus divisor.

quotient = dividend / divisor;
remainder = dividend % divisor;

Im letzten Schritt müssen wir den Quotienten und den gerade berechneten Rest auf der Konsole ausgeben.

printf("Quotient = %d\n", quotient);
printf("Remainder = %d", remainder);

Vollständiger Quellcode:

#include <stdio.h>

int main() {
  int dividend;
  int divisor;
  int quotient;
  int remainder;

  printf("Enter dividend: ");
  scanf("%d", &dividend);
  printf("Enter divisor: ");
  scanf("%d", &divisor);

  quotient = dividend / divisor;
  remainder = dividend % divisor;

  printf("Quotient = %d\n", quotient);
  printf("Remainder = %d", remainder);
  return 0;
}

Ausgang:

Enter dividend: 500
Enter divisor: 24
Quotient = 20
Remainder = 20
Waqar Aslam avatar Waqar Aslam avatar

I am Waqar having 5+ years of software engineering experience. I have been in the industry as a javascript web and mobile developer for 3 years working with multiple frameworks such as nodejs, react js, react native, Ionic, and angular js. After which I Switched to flutter mobile development. I have 2 years of experience building android and ios apps with flutter. For the backend, I have experience with rest APIs, Aws, and firebase. I have also written articles related to problem-solving and best practices in C, C++, Javascript, C#, and power shell.

LinkedIn

Verwandter Artikel - C Integer

Verwandter Artikel - C Math