Maison  >  Article  >  développement back-end  >  En langage C, additionner les nombres d'un tableau après les avoir divisés par le nombre précédent

En langage C, additionner les nombres d'un tableau après les avoir divisés par le nombre précédent

WBOY
WBOYavant
2023-09-12 09:53:071378parcourir

En langage C, additionner les nombres dun tableau après les avoir divisés par le nombre précédent

Un tableau est une séquence d'éléments du même type de données. Dans cette question, nous envisagerons d’utiliser un tableau d’entiers pour résoudre le problème. Dans ce problème, nous trouverons la somme d'un élément en le divisant par son élément précédent.

Donnons quelques exemples pour mieux comprendre ce problème -

Exemple 1 -

Array : 3 , 5 ,98, 345
Sum : 26

Explication − 3 + 5/3 + 98/5 + 345/98 = 3 + 1 + 19 + 3 = 26

Nous résumons en divisant chaque élément élément par élément par son élément précédent et en considérant uniquement la partie entière de la division.

Exemple 2 -

Explication − 3 + 5/3 + 98/5 + 345/98 = 3 + 1 + 19 + 3 = 26

Nous divisons chaque élément par son élément précédent et ne considérons que la partie entière de la division Somme.

Exemple 2 −

Array : 2, 5 , 8, 11, 43 , 78 , 234
Sum : 13

Explication − 2 + 2 + 1 + 1 + 3 + 1 + 3 = 13

Algorithme

Cet algorithme itère sur chaque élément du tableau. et divisez-le par l'élément qui le précède. Ensuite, ajoutez la valeur du quotient à la variable somme.

Input : Array - int arr[]
Output : int sum

Step 1: Initialize sum = arr[0]
Step 2: for(i = 1 to size of arr ) follow step 3
Step 3 : sum = sum + (arr[i]/arr[i-0] )
Step 4: print the sum

Il s'agit d'un algorithme simple en quatre étapes pour trouver la somme d'un tableau après avoir divisé un nombre par le nombre précédent. Nous avons initialisé la somme avec le premier élément du tableau car logiquement le premier élément n'a aucun élément, ce qui signifie qu'il ne peut être divisé par aucun élément. Donc, étant donné que la boucle générera une erreur car nous accéderons à l'élément à l'index -1 , c'est faux.

Exemple

Démonstration en temps réel

#include<stdio.h>
int main() {
   int arr[] = { 2, 5 , 8, 11, 43 , 78 , 234 };
   int n = sizeof(arr)/sizeof(arr[0]);
   int sum = arr[0];
   for (int i = 1; i < n; i++) {
      sum += arr[i] / arr[i - 1];
   }
   printf("The sum of array after dividing number from previous numbers is %d </p><p>", sum);
   return 0;
}

Sortie

The sum of array after dividing number from previous number is 13.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer