English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Dans ce tutoriel, vous apprendrez à utiliser les fonctions pour résoudre différents problèmes.
Pour mieux comprendre les paramètres et le retour des fonctions, les fonctions définies par l'utilisateur peuvent être classées en:
Considérons une situation où vous devez vérifier les nombres premiers. Par le biais de4Différentes méthodes pour créer une fonction définie par l'utilisateur peuvent résoudre les problèmes suivants.
#include <iostream> using namespace std; void prime(); int main() { // Aucun paramètre n'est passé à prime() prime(); return 0; } // Le type de retour de la fonction est void, car aucune valeur n'est retournée. void prime(); { int num, i, flag = 0; cout << "Entrez un entier positif pour le vérifier: "; cin >> num; for(i = 2; i <= num/2; ++i) { if (num % i == 0) { flag = 1; break; } } if (flag == 1) { cout << num << " n'est pas un nombre premier."; } else { cout << num << " est un nombre premier."; } }
Dans le programme ci-dessus, la fonction prime() est appelée dans main(), mais sans paramètres.
La fonction prime() est utilisée pour obtenir un nombre positif de l'utilisateur et vérifier si ce nombre est un nombre premier.
Comme le type de retour de prime() est void, cette fonction ne retourne aucune valeur.
#include <iostream> using namespace std; int prime(); int main() { int num, i, flag = 0; // Aucun paramètre n'est passé à la fonction prime() num = prime(); for (i = 2; i <= num/2; ++i) { if (num % i == 0) { flag = 1; break; } } if (flag == 1) { cout << num << " n'est pas un nombre premier."; } else { cout << num << " est un nombre premier."; } return 0; } // Le type de retour de la fonction est int int prime() { int n; printf("Entrez un entier positif pour le vérifier: "); cin >> n; return n; }
Dans le programme ci-dessus, la fonction prime() est appelée à partir de main(), sans paramètres.
La fonction prime() récupère un entier positif de l'utilisateur. Comme le type de retour de la fonction est int, elle renvoie le nombre entré par l'utilisateur à la fonction main().
Ensuite, vérifiez si le nombre est premier dans main() lui-même et imprimez-le sur l'écran.
#include <iostream> using namespace std; void prime(int n); int main() { int num; cout << "Entrez un entier positif pour le vérifier: "; cin >> num; // Le paramètre num est passé à la fonction prime(). prime(num); return 0; } // L'appel de la fonction n'a pas de valeur de retour. Par conséquent, le type de retour de la fonction est void. */ void prime(int n) { int i, flag = 0; for (i = 2; i <= n/2; ++i) { if (n % i == 0) { flag = 1; break; } } if (flag == 1) { cout << n << " n'est pas un nombre premier."; } else { cout << n << " est un nombre premier."; } }
Dans le programme ci-dessus, on demande d'abord à l'utilisateur d'entrer un nombre positif, qui est stocké dans la variable num.
Ensuite, passez num à la fonction prime(), où vérifiez et imprimez si le nombre est premier.
Parce que, le type de retour de prime() est void, la fonction prime() n'a pas de valeur de retour.
#include <iostream> using namespace std; int prime(int n); int main() { int num, flag = 0; cout << "Entrez un entier positif pour le vérifier: "; cin >> num; // Le paramètre num est passé à la fonction check(). flag = prime(num); if(flag == 1) cout << num << " n'est pas un nombre premier."; else cout << num << " est un nombre premier."; return 0; } /* Cette fonction renvoie une valeur entière. */ int prime(int n) { int i; for(i = 2; i <= n/2; ++i) { if(n % i == 0) return 1; } return 0; }
Dans le programme ci-dessus, on demande à l'utilisateur d'entrer un entier positif et le stocker dans la variable num.
Puis, passez num à la fonction prime(), où vérifiez si le nombre est premier ou non.
Comme le type de retour de prime() est int, donc1Ou 0 est retourné à la fonction appelante main() si le nombre est un nombre premier, alors retourne1. Si ce n'est pas le cas, retourne 0.
Dans la fonction main(), retourne1Ou 0 est stocké dans la variable flag, et le texte correspondant est affiché à l'écran.
Les quatre programmes ci-dessus fournissent les mêmes résultats de sortie et sont techniquement des programmes corrects.
Il n'y a pas de spécification stricte pour le choix de la méthode.
Choisissez la méthode spécifique en fonction de la situation spécifique et de la manière dont vous résolvez le problème.