Maison > développement back-end > C++ > le corps du texte

Programme C : Résoudre le problème d'arrêt

WBOY
Libérer: 2023-09-11 20:17:02
avant
1070 Les gens l'ont consulté

Programme C : Résoudre le problème darrêt

Énoncé du problème- Un programme qui trouve les arrêts de train dans r gares parmi n gares de telle manière qu'il n'y ait pas deux arrêts consécutifs.

Explication du problème

Ce programme comptera le nombre de façons dont le train peut s'arrêter, c'est-à-dire les permutations. Ici, le train voyagera du point X au Y. Entre ces points, il y a n sites. Le train s'arrêtera à r gares parmi ces n gares, à condition qu'en cas d'arrêt aux r gares, le train ne puisse pas s'arrêter à deux gares

Directes npr. La formule trouve cette permutation.

Donnons quelques exemples, p>

Input : n = 16 , r = 6
Output : 462
Copier après la connexion

Explication - Trouvez le nombre de façons dont un train peut s'arrêter dans 6 gares sur 16 qui satisfont aux critères en utilisant la formule de permutation donnée ci-dessous :

np r ou p(n, r) = n ! ∕ (n-r) !

Algorithme

Input  : total numbers of stations n and number of stations train can stop r.
Step 1 : For values of n and r calculate the value of p(n,r) = n! / (n-r)!
Step 2 : print the value of p(n,r) using std print method.
Copier après la connexion

Exemple

Démonstration en direct

#include<stdio.h>
int main(){
   int n = 16, s = 6;
   printf("Total number of stations = %d</p><p>Number of stopping station = %d</p><p>", s, n);
   int p = s;
   int num = 1, dem = 1;
   while (p!=1) {
      dem*=p;
      p--;
   }
   int t = n-s+1;
   while (t!=(n-2*s+1)) {
      num *= t;
      t--;
   }
   if ((n-s+1) >= s)
      printf("Possible ways = %d", num / dem);
   else
      printf("no possible ways");
}
Copier après la connexion

Sortie

Total number of stations = 16
Number of stopping station = 6
Possible ways = 462
Copier après la connexion

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!

Étiquettes associées:
source:tutorialspoint.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal