Cycles. Algorithmes cycliques. Cycles avec condition préalable et poster l'opérateur du cycle avec la condition préalable est effectué

Le processus de calcul cyclique (CIP) est caractérisé par la répétition des mêmes calculs au-dessus du jeu de données. Le nombre de répétitions de cycle est géré par une variable spéciale appelée. compteur.ou alors variable de contrôlecycle. Le compteur est superposé par une condition déterminante, tant que le cycle doit être effectué.

Bloc de calcul répété appelé télcycle. Dans le corps du cycle doit être fourni changer la valeur de contre-valeurafin qu'il puisse finir. Si le corps du cycle consiste à compter plusieurs opérateurs, il mensonges entre crochets de l'opérateurcommencer ... fin;. Un seul corps du cycle appelle-le marcher.

Ainsi, pour programmer le cycle, il suffit de déterminer la condition qui contrôle ses répétitions et décrit les opérateurs formant le corps du cycle. À partir de ce point de vue, seuls deux types de cycles sont théoriquement possibles - la vérification de la condition est précédée de l'exécution du corps du cycle, soit après elle. Photos Ces cycles sous forme d'organigrammes avec les descriptions correspondantes:

Cycle avec condition préalable: Premièrement, la condition est vérifiée, puis, selon qu'elle est vraiment ou fausse, ou que le corps du cycle est effectué ou la transition vers l'opérateur à côté du corps du cycle. Une fois les corps terminés, le contrôle est à nouveau transmis à la validation de la condition. Naturellement, on suppose que dans le corps du cycle, il y avait un certain changement de condition dans l'état des variables - sinon cela se produira refroidissementet le programme "accrochera".

Cycle avec post-bandeau: Premièrement, le corps du cycle est effectué, puis le contrôle est transmis à la validation de la condition. En fonction de la vérité ou de la fausseté de la maladie, le corps du cycle est ré-ou la transition vers l'opérateur à côté du corps du cycle se produit. Tout ce qui a été dit sur une possible boucle pour un cycle avec la condition préalable est valable pour le cycle avec la postlasie.

Basé sur les diagrammes de blocs, la principale différence entre deux cycles est évidente: le cycle avec le paiement est garanti pour être effectué au moins une fois et le cycle avec la condition préalable peut ne pas être effectuéSi l'état est tout de suite tout de suite.

Dans le langage Pascal, les deux types de cycles sont mis en œuvre. Le cycle de translation a la vue générale suivante:

alors que Logical Dee commence

(Opérateurs de corps de cycle)

Le fonctionnement du cycle peut être décrit en mots: " tandis que l'expression logique est vraiment un corps de cycle répété".

L'expression logique est basée sur les règles étudiées au chapitre 7. Le corps du cycle peut former des opérateurs Pascal. S'il n'y a qu'un seul opérateur dans le corps du cycle, les crochets de l'opérateur ne peuvent pas écrire.

L'enregistrement général du cycle avec la postcondition est la suivante:

(Opérateurs de corps de cycle)

jusqu'à Logical_section;

Le cycle est utilisé comme suit: " le corps du cycle est répété jusqu'à ce que l'expression logique devienne vraie". Veuillez noter que, en revêtement en contraste, le cycle du pascal fonctionne jusqu'à la condition faux. Cette différence est soulignée par l'utilisation du mot clé mot ("tant que ne pas") Au lieu de" jusqu'à "). En outre, sous la forme d'une exception, le corps de cyclesréèpes, même s'il consiste en plusieurs opérateurs, vous pouvez ne pasentrer dans les supports de l'opérateur.

Très souvent, les cycles sont interchangeables. Imaginez, par exemple, que pour chacune des valeurs de la variable X \u003d 1.2, ..., 20, vous devez effectuer un certain calcul (mathématiquement cette loi de changement peut être écrite comme
ou alors
). Nous allons montrer une vision générale des cycles qui doit:

tandis que X.<=20 do begin

(opérateurs de calcul)

(opérateurs de calcul)

Comme on peut le voir à partir de la liste, la valeur de contrôle XB des deux cas est attribuée à la valeur initiale1, les deux cycles modifient respectivement la valeur de la valeur, respectivement, la correction du cycle, l'opérateur: \u003d x + 1;, mais pour le cycle de Le "inversé" ("Il y aura plus de 20") et le corps n'est pas conclu entre crochets de l'opérateur.

Souvent, l'utilisation de l'un des cycles a l'air préférable. Par exemple, le traitement de l'entrée de l'utilisateur du clavier est plus pratique à l'aide de la répétition (l'utilisateur doit d'abord appuyer sur la touche, puis suivez le chèque et le traitement).

En outre, un cycle peut être appelé toute séquence d'instructions exécutables multiples organisée par n'importe quel procédé de détermination de la séquence des instructions destinées à une exécution multiple est appelée corps de cycle. L'exécution de l'unité du corps du cycle est appelée itération. L'expression sera à nouveau effectuée une itération ou le cycle sera achevé appelé l'état de la sortie ou de la condition de la fin du cycle ou de la condition de continuation, en fonction de la vérité interprétée comme un signe de nécessité ...


Partager des travaux sur les réseaux sociaux

Si ce travail ne figure pas au bas de la page, il existe une liste d'œuvres similaires. Vous pouvez également utiliser le bouton de recherche.


Cycle - le type de conception de contrôle danslangues de programmation de haut niveaudestiné à l'organisation de plusieurs réglagesinstructions . En outre, un cycle peut être appelé toute séquence exécutable multiple d'instructions, organisée par n'importe quel procédé.

Définitions

La séquence des instructions destinées à une exécution multiple est appeléecycle du corps . Une seule exécution d'un corps de cycle est appeléeitération. Expression L'itération sera à nouveau exécutée une fois de plus, ou le cycle se terminera, appelécondition de sortie ou État de la fin du cycle (ou alors condition terme Selon la manière dont sa vérité est interprétée - comme un signe de la nécessité de remplir ou de poursuivre le cycle).Variable stocker le numéro d'itération actuel est appelécompte d'itérations Cycle ou simplementcompteur de cycle . Le cycle ne contient pas nécessairement un compteur, le compteur n'est pas obligé d'être une - la condition de sortie du cycle peut dépendre de plusieurs variables modifiées dans le cycle et peut être déterminée par des conditions externes (par exemple, l'apparition d'un certain temps), dans ce dernier cas, le compteur peut ne pas être nécessaire du tout.

L'exécution de tout cycle inclut l'initialisation initiale des variables de cycle, la vérification des conditions de sortie, l'exécution du corps du cycle et la mise à jour de la variable de cycle sur chaque itération. En outre, la plupart des langages de programmation fournissent des outils pour la gestion précoce du cycle, par exemple, des opérateurs de résiliation du cycle, c'est-à-dire de produire du cycle, quelle que soit la vérité, la condition de sortie

Cycle avec condition préalable

Le cycle avec la condition préalable est un cycle qui est actuellement vrai pour une certaine condition spécifiée avant qu'il ne commence. Cette condition est vérifiéeavant que les corps du cycle, de sorte que le corps ne peut pas être rempli (si la condition est fausse du tout début). Dans la plupart des langues de programmation procédurales sont mises en œuvre par l'opérateurpendant que D'ici c'est le deuxième nom - le cycle de temps. Dans la langue du cycle Pascal avec la condition préalable, le type suivant est:

pendant que<условие> fais.

commencer.

<тело цикла>

finir;

Cycle avec post-bandeau

Cycle avec post-cycle, dans lequel la condition est vérifiéeaprès cycle d'exécution du corps. Par conséquent, il s'ensuit que le corpstoujours exécutéau moins une fois. Dans la langue Pascal, ce cycle met en œuvreopérateur rÉPÈTE JUSQU'À; En C - Do ... tandis que.
Dans la langue du cycle Pascal avec la postlagisation, il a le type suivant ::

répéter.

<тело цикла>

jusqu'à ce que <условие выхода>

Cycle avec un milieu

Le cycle avec la sortie du milieu est la forme la plus courante du cycle conditionnel. Syntaxique, un tel cycle est établi avec l'aide de trois conceptions: le début du cycle, la fin du cycle et les commandes de sortie du cycle. La conception de la démarrage étiquette le point du programme dans lequel commence le corps du cycle, la conception finale est un point où le corps se termine. À l'intérieur du corps, il faut présenter une commande hors du cycle, lors de la transmission des extrémités et de la commande du cycle, est transmise à l'opérateur, après la conception de la fin du cycle. Naturellement, le cycle est exécuté plus d'une fois, la commande de sortie doit être invalide non définitivement, mais uniquement lors de l'exécution de la condition du cycle.

en fait c'estse rompre;

Cycle avec un mètre

Cycle avec un mètre - un cycle dans lequel certainsvariable modifie sa valeur de la valeur initiale spécifiée à la valeur finale avec une étape, et pour chaque valeur de cette variable, le corps du cycle est effectué une fois. Dans la plupart des langues de programmation procédurales sont mises en œuvre par l'opérateurpour Ce qui spécifie le compteur (le "cycle variable"), le nombre de passes requis (ou la valeur limite du compteur) et, éventuellement, l'étape avec laquelle le compteur change.

pour i: \u003d 0 à 9 faire

commencer.

Corps de cycle

finir;

Sortie frontale du cycle

La commande EXIT précoce s'applique lorsqu'il est nécessaire d'interrompre l'exécution du cycle dans lequel la condition de sortie n'a pas encore été atteinte. Il arrive, par exemple, lorsqu'une erreur est détectée lors de l'exécution d'un corps de cycle, après quoi l'opération de boucle n'a pas de sens.

Une équipe de sortie précoce est généralement appeléeSortir ou casser et son action est similaire à l'action de la commande de transition inconditionnelle (aller à. ) L'équipe, directement le prochain cycle, dans laquelle se trouve cette commande.

Cycles imbriqués

Il est possible d'organiser un cycle à l'intérieur du corps d'un autre cycle. Un tel cycle sera appelécycle imbriqué. Le cycle investi par rapport au cycle de l'organe dont il est investi sera renvoyécycle interneet au contraire, le cycle dans le corps dont il y a un cycle investi sera renvoyé àexterne par rapport à l'investissement. À l'intérieur du cycle investi, à son tour, un autre cycle peut être investi, formant ce qui suitniveau de niveau des Neusetc. Le nombre de niveaux de nidification n'est généralement pas limité.

Le nombre total d'extensions du corps du cycle interne ne dépasse pas le produit du nombre d'itérations des cycles internes et de tous les cycles externes. Par exemple, la prise de trois cycles investies dans l'autre, chacune des 10 itérations, nous obtenons 10 versions de corps pour le cycle externe, 100 pour le cycle de deuxième niveau et 1000 dans le cycle interne lui-même.

Autres œuvres similaires qui peuvent vous intéresser. ISHM\u003e

2740. Algorithmes cycliques. Cycle avec condition préalable 16.37 KB.
Nous allons vous familiariser avec le premier d'entre eux - l'exploitant du cycle avec le moment. Les cycles avec la condition préalable sont utilisés lorsque l'exécution du cycle est associée à une certaine condition logique. L'opérateur de cycle avec ce qui précède a deux parties: la condition du cycle et du corps du cycle. Formulaire d'enregistrement général suivant tandis que la condition commence à terminer le cycle du corps; En russe, cela ressemble à ceci: alors que cette condition est effectuée, faites un groupe d'opérateurs jusqu'au bout depuis le début; Il est clair que les crochets de l'opérateur mis à séparer du reste du programme ...
7903. Le cycle de production 39.35 KB.
La période de travail consiste en l'exercice d'opérations technologiques et non technologiques; Ce dernier inclut toutes les opérations de contrôle et de transport depuis la première opération de production et jusqu'à ce que le produit terminé soit terminé. Avec une forme de mouvement séquentielle, l'ordre de production est une partie ou une machine collectée ou une partie des pièces 1 série de machines 2 - dans le processus de production va à chaque opération de processus ultérieure qu'après le traitement de l'assemblage de toutes les pièces. des machines de cette fête est complétée ...
7548. Cycle de vie EIS. 34.12 KB.
Le cycle de vie de l'EIS La nécessité de créer une EIE peut être déterminée soit la nécessité d'automatiser ou de moderniser les processus d'information existants, soit de la nécessité d'une réorganisation fondamentale dans les activités de la réingénierie des activités de l'entreprise. Les besoins de la création de l'EIS indiquent pour atteindre quels objectifs doivent être développés; Deuxième à quelle heure il est conseillé de mettre en œuvre le développement; Thiephe quels coûts doivent être mis en œuvre pour concevoir le système. Eis Design ...
7492. Cycle de projet 5,37 Mo.
Cycle de vie du projet Le concept d'origine pour étudier les problèmes de financement des travaux sur le projet et l'adoption de décisions pertinentes. Chaque projet, quelle que soit la complexité et le volume de travail nécessaires à sa mise en œuvre, sous certains États dans son développement: de l'État lorsqu'il n'y a pas encore de projet à l'État lorsqu'il n'y a plus lieu là-bas. Pour les hommes d'affaires, le début du projet est associé au début de sa mise en œuvre et au début des investissements en espèces dans sa mise en œuvre.
8075. Le deuxième cycle des calculs 9.25 KB.
Dans le second cas, les D-cubes d-cubes équivalents ont été obtenus pour un élément 8, qui diffèrent de la seule seule inversion du symbole D, il est donc nécessaire de prendre un D-cube équivalent et d'obtenir une solution.
21755. Cycle de vie d'un projet 154,99 KB.
L'efficacité et la durabilité des activités de l'organisation moderne sont largement déterminées par la qualité des activités de gestion effectuées dans la gestion du cycle de projet. La gestion compétente du cycle de projet est un indicateur de la bonne direction du développement stratégique conformément aux opportunités disponibles.
2742. Répéter la répétition de cycle 12,49 KB.
Vous savez déjà comment organiser un cycle en utilisant l'opérateur tandis que l'opérateur. Rappelez-vous que lors de l'exécution de cet opérateur, l'ordinateur vérifie la valeur de la condition. Si la condition est vraie, la partie exécutive de l'opérateur de Whole sera répétée jusqu'à ce que
20265. Zhisttiєviy cycle de la société "Ferrero" 13,74 KB.
Alla Zoopnyl I Sviy VibіR à Vіm Bullsh-Mensen Kondiji Kondterty Kompanії Ferrero. Part de la peau de la peau de la peau Quatrième montagne à Svіtі - Opinateur dans la bouche de Lasuni Yaki Baluє moi-même Lasoischi _tіyskiї Grup Ferrero Yakiy Z MOMENT ZASNONCED dans l'assurance Rocks Vipovnuzhnaya Rockіv Vi Nіkoli n'a pas fonctionné à propos de ces hto HTO HTO Doroslich Lasoshiv D_TEJI Skocolate -Shigovu pad p_d Nutell ...
1002. Conditions de vérification, cycle avec une condition supplémentaire 2,25 Mo.
La langue d'assembleur est le système de désignation utilisé pour représenter sous la forme lisible de programmes enregistrés dans le code de la machine. La langue d'assembleur permet au programmeur d'utiliser des codes mnémoniques alphabétiques.
2341. Cycle de vie du produit et comportement des consommateurs 14,84 KB.
Le cycle de vie des biens et le comportement des consommateurs du ZHC comprend plusieurs étapes des étapes: recherche et développement; la mise en oeuvre; augmentation des ventes; maturité; récession. Première étape de l'étude de la ZHCT et du développement de produits. Pour la société, ce stade de création de biens n'est que des coûts et des revenus éventuels futurs. La procédure d'élimination des marchandises sur le marché prend du temps; Au cours de cette période, les ventes augmentent lentement ce qui peut être expliqué par de telles circonstances: des retards dans l'expansion de la capacité de production; problèmes techniques; ...

Veuillez pause Adblock sur ce site.

Parfois, il est impossible de prédire à l'avance comment le cycle doit être exécuté. Mais en même temps, une certaine condition est connue lorsque le cycle doit s'arrêter. Par example:

Programme: Jouer cube.

Le programme remplace le cube de jeu habituel.

Contrôler:

  • 1 - lancer un cube;
  • 0 - Terminez le jeu.

Écrivons la pièce à travailler pour notre jeu.

Liste 1.

#Inclure. #Inclure. #Inclure. Int principal (void) (srandf (null); printf ("############ dione \\" S Bones ########### \\ n "); printf (" # # \\ n "); printf (" # commandes: # \\ n "); printf (" # # \\ n "); printf (" # 1 - nouveau jeu # \\ n "); printf (" # 0 - sortie # \\ n "); printf (" # # \\ n "); printf (" ############################### ######### ######## \\ n \\ n "); int Control; Valeur int \u003d 0; Printf (" Entrez la commande: "); Scanf ("% d ", & contrôle); si (contrôle \u003d\u003d 1); (Valeur \u003d 1 + rand ()% 6; printf ("résultat:% d \\ n", valeur);) Retour 0;)

Ici, nous sommes confrontés au problème. Il est clair que vous savez à l'avance lorsque le jeu finira cela impossible. Donc, cela ne fonctionnera pas directement pour utiliser le pour. Une production d'une situation similaire est l'utilisation d'autres structures cycliques. Par exemple, pendant le cycle.

Cycle avec

Liste 2.

Tandis que (condition) opérateur;

  1. Le programme répond au mot clé de tout ce qui signifie une conception cyclique supplémentaire;
  2. La condition est vérifiée. L'expression logique enregistrée entre parenthèses est calculée;
  3. Si la valeur de la condition est la vérité, le corps du cycle est effectué. Aller à la clause 2;
  4. Si la valeur de condition est un mensonge, le cycle est terminé. Le contrôle est transmis à l'opérateur après le corps du cycle.

Sous l'opérateur signifie un opérateur. Si vous souhaitez effectuer plusieurs commandes dans le cycle, vous devez utiliser l'opérateur composite ().

Réécrivez notre programme en utilisant ce cycle.

Liste 3.

#Inclure. #Inclure. #Inclure. Int principal (void) (srandf (null); printf ("############ dione \\" S Bones ########### \\ n "); printf (" # # \\ n "); printf (" # commandes: # \\ n "); printf (" # # \\ n "); printf (" # 1 - nouveau jeu # \\ n "); printf (" # 0 - sortie # \\ n "); printf (" # # \\ n "); printf (" ############################### ######### ######## \\ n \\ n "); Contrôle int; Valeur int \u003d 0; Printf (" Entrez la commande: "); scanf ("% d ", et contrôle); tandis que (contrôle! \u003d 0); (Cas 1: valeur \u003d 1 + rand ()% 6; printf ("résultat:% d \\ n", valeur); pause; défaut: printf ("erreur! Essayez ... \\ n"); pause; printf ("entrer la commande:"); scanf ("% d", & contrôle);) printf ("Good Bye! \\ n"); retour 0;)

Nous décrivons l'algorithme des travaux de ce programme:

  1. Nous affichons le menu de l'utilisateur et l'offre pour entrer la commande;
  2. Courir le cycle pendant le cycle. Condition de vérification;
  3. Si l'utilisateur est entré 0, la condition du cycle prend la valeur du mensonge. Le corps du cycle n'est pas effectué. Le contrôle est transmis à l'opérateur suivant sur le cycle. Affiché une rangée de bons bye! . Le programme est terminé;
    1. Opérateur de sélection:
      1. Si l'utilisateur est entré 1, nous générons un nombre aléatoire de 1 à 6 et l'affiche à l'écran. Nous partons de l'opérateur de sélection;
      2. Si l'utilisateur a entré quelque chose d'autre, affichez un message d'erreur. Nous partons de l'opérateur de sélection.
    2. Nous apportons l'utilisateur à entrer une nouvelle commande;
    3. Lisez le code de commande dans la variable de contrôle;
    4. Nous retournons à la vérification de la condition. Point 3.

Le cycle tandis que le cycle est appelé un cycle avec la condition préalable, car Avant d'effectuer un corps de cycle, une condition est vérifiée. Cela signifie, par exemple, que cette situation est possible que le corps du cycle ne soit pas rempli du tout. Un autre nom du cycle de temps est maintenant. Traduction littérale de l'anglais. Ce nom affiche l'essence du cycle lui-même.

Règle mnémonique:

Jusqu'à présent, la condition de la vérité, effectuer le corps du cycle.

Faire un cycle tout en vélo

Et le dernier, le troisième design cyclique est le cycle de travail.

Ce cycle diffère de la vélo tandis que la condition n'est pas vérifiée avant d'effectuer le corps du cycle, mais après les corps du cycle. Cela signifie que le corps du cycle DO-tandis que le cycle sera rempli au moins une fois.

La syntaxe de cette conception cyclique est la suivante:

Liste 4.

Opérateur; tandis que (condition);

Cette conception fonctionne comme suit:

  1. Le programme rencontre un mot clé faire. Donc, le cycle de travail en avant;
  2. Le corps du cycle est effectué;
  3. La condition est vérifiée;
  4. Si la condition est la vérité, le corps du cycle est réalisé à nouveau;
  5. Si la condition est fausse, le fonctionnement de la conception cyclique est terminé. Les programmes effectuent l'opérateur après le cycle DO-TI

Réécrivez notre programme en utilisant ce type de conception cyclique.

Liste 5.

#Inclure. #Inclure. #Inclure. Int principal (void) (srandf (null); printf ("############ dione \\" S Bones ########### \\ n "); printf (" # # \\ n "); printf (" # commandes: # \\ n "); printf (" # # \\ n "); printf (" # 1 - nouveau jeu # \\ n "); printf (" # 0 - sortie # \\ n "); printf (" # # \\ n "); printf (" ############################### ######### ######## \\ n \\ n "); int CH_Control; Valeur int \u003d 0; do (Printf (" commande d'entrée: "); scanf ("% D ", & CH_Control); commutateur (CH_CONTROL) ( Case 0: Case; Cas 1: Valeur \u003d 1 + rand ()% 6; printf ("Résultat:% d \\ n", valeur); pause; défaut: printf ("Erreur! Essayez ... \\ n") ; pause;)) tandis que (CH_Control! \u003d 0); Printf ("Good Bye! \\ n"); retour 0;)

En général, il est très similaire au code précédent. Vrai, je devais changer un peu l'opérateur de sélection: ajouter une branche de cas 0 :. Sinon, en raison du fait que le chèque est effectué après les organes du cycle, le programme n'a pas fonctionné de manière incorrecte. Lorsque vous entrez zéro, un message d'erreur est apparu. Dans le dernier programme (avec un cycle de temps), il ne pourrait y avoir aucune situation de ce type, car L'égalité zéro a été vérifiée dans l'état du cycle. En entrant zéro, la condition serait un mensonge, ce qui signifie que le cycle se termine et que le corps du cycle n'a pas été exécuté.

Plan-net pas de la leçon

Sur l'informatique et les TIC

Dans la 10ème année sur le sujet:

"Algorithmes cycliques. Cycles avec condition préalable et postcondition. "

Chose: Informatique et TIC

LEÇON THEME: " Algorithmes cycliques. Cycles avec condition préalable et postcal

Type de leçon: Étudier un nouveau matériau

Formulaire: cours de travail

Cours d'objectifs

Éducatif:Se familiariser avec le concept de "cycles avec la forclusion et la postcondition". Sécurisez la connaissance des étudiants sur l'algorithme.

développement: Rail Up Travail, Indépendance, Culture de la parole et de la communication.

Éducatif: Développer la pensée, la mémoire, la parole et d'autres processus mentaux.

Bois cognitif: former et développer la compétence dans le domaine de l'utilisation des TIC

(Compétences TIC).

Bois réglementaire: corrigé de manière conditionnelle leurs actions avec des résultats prévus.

Bois communicatif: savoir travailler individuellement et dans le groupe.

Bois personnel: comprendre l'importance de la formation dans le domaine de l'informatique et des TIC dans des conditions

développement de la société de l'information.

Moyens d'éducation:projecteur, ordinateur personnel, logiciel spécialisé (environnement de programmation Pascalabc).

Pendant les classes

1. Organisation du début de la leçon

Salut. Aujourd'hui, je vais diriger les leçons de «informatique et de TIC». Salutations aux étudiants, vérifiez leur préparation à la leçon. Les étudiants se félicitent mutuellement.

2. Vérification des devoirs

Je leur demande d'avoir passé du matériel.

1. Qu'est-ce qu'un algorithme linéaire?

L'algorithme linéaire ou suivre est le type d'algorithme dans lequel la séquence d'actions ne change pas dans son processus d'exécution. AlgorithmeDans lequel les commandes sont exécutées dans l'ordre de leur dossier, c'est-à-dire que l'une après l'autre s'appelle linéaire.

2. Comment l'algorithme linéaire est-il mis en œuvre?

Dans le programme, l'algorithme linéaire est mis en œuvre par l'emplacement séquentiel des opérateurs.

Par exemple, linéaire est l'algorithme d'atterrissage de l'arbre suivant:

1) creuser dans la terre;
2) abaissez la limite de graines dans un trou;
3) s'endormir une fosse avec une glace de la terre;
4) Gémille d'eau avec de l'eau.

3. Quelle est l'organisation d'actions appelées une succursale?

La forme d'organisation d'actions, dans laquelle, en fonction de la mise en œuvre ou de la non-exécution d'une certaine condition, est effectuée soit l'une ou l'autre séquence d'actions est appelée ramification.

4. Comment élaborons-nous un algorithme de succursale?

La logique de la prise de décision peut être décrite comme suit:

SI UN<условие> Cette<действия 1> Sinon<действия 2>

Exemples:

Si tu veux etre bien, Puis tempérer, sinon versez toute la journée sur le canapé;
Si de faibles avales volent, il pleuvra, sinon ce ne sera pas de pluie;
Si les leçons sont apprises, passez à pied, sinon apprenez.

3. Étudier un nouveau matériau

Le sujet de nos leçons sera: " Algorithmes cycliques. Le cycle avec le test "alors que". Cycle avec le post "à"».

    Le but de notre leçon est la suivante: "Connaissance avec le concept de cycle et le développement de la capacité de résoudre diverses tâches sur ce sujet".

Écris maintenant quel est le cycle?

Cycle - la forme d'organisation d'actions dans lesquelles la même séquence d'actions est effectuée plusieurs fois aussi longtemps que effectue n'importe quelle condition.

Algorithme cyclique - Il s'agit d'un algorithme contenant un ou plusieurs cycles.

La structure algorithmique du «cycle» peut être fixée de différentes manières:

graphiquement - en utilisant un organigramme;

en programmation, par exemple, à Pascal, en utilisant des instructions spéciales qui implémentent des cycles de différents types.

Aujourd'hui, nous vous familiariserons avec les cycles avec le prévoir et le poste.

Les cycles avec la condition préalable sont utilisés lorsque l'exécution du cycle est associée à une certaine condition logique. L'opérateur de cycle avec ce qui précède a deux parties: la condition du cycle et du corps du cycle.

En russe, cela ressemble à ceci:

alors que cette condition est effectuée, faites
du début
Groupe d'opérateurs
finir;

Lorsque vous utilisez un cycle avec une condition préalable, vous devez vous rappeler les éléments suivants:

    la valeur des termes de performance du cycle doit être déterminée avant le début du cycle;

    si la valeur de la condition est vraie, le corps du cycle est effectué, après quoi la validation est répétée. Si la condition est fausse, quittez le cycle;

    au moins un des opérateurs inclus dans l'organisme du cycle doit affecter la valeur de l'état du cycle, sinon le cycle sera répété avec un nombre infini de fois.

Lors de l'exécution d'un opérateur tandis que l'opérateur, un groupe spécifique d'opérateurs est effectué jusqu'à ce que la condition définie dans l'opérateur tandis soit vraiment vraie. Si la condition est immédiatement fausse, l'opérateur ne sera jamais terminé.

Les crochets de l'opérateur sont mis à séparer du reste du programme que le groupe d'opérateurs à répéter dans le cycle. Si un seul opérateur doit effectuer le cycle, les crochets de l'opérateur ne se définissent pas.

Cet opérateur est effectué comme suit: Premièrement, la condition qui se dresse après le mot alors qu'elle est vérifiée pour la vérité. Si c'est vrai, l'opérateur fonctionne après le mot, puis la condition est vérifiée à nouveau, etc. Dès la prochaine étape, la condition n'est pas exécutée (la valeur d'expression devient égale à false), puis l'exécution de l'opérateur de cycle s'arrête.

Si l'opérateur exécutable ne modifie pas les valeurs des variables dans la condition, la condition sera toujours vraie et le cycle sera exécuté pour toujours, alors qu'ils disent que le programme est en boucle. Si, avec la première inspection, il s'avère immédiatement pour être faux, puis l'opérateur de cycle n'est pas effectué du tout.

Si nous devons effectuer plus d'un opérateur dans le cycle, l'opérateur composite est utilisé, c'est-à-dire Plusieurs opérateurs sont conclus au début ... Supports de l'opérateur final.

Diapositive (commutateur) !!!

Lors de la construction de programmes avec la structure du cycle tandis:

1) La valeur initiale de l'expression logique doit être déterminée avant d'entrer dans le cycle, c'est-à-dire Auparavant;

2) La séquence des opérateurs effectuée dans le corps du cycle doit être connectée logiquement et contenir au moins un opérateur modifiant la valeur du paramètre de cycle, sinon le cycle continuera d'infiniment;

3) une expression logique dans l'en-tête de vélo tandis que le cycle est terminé, devrait prendre la valeur de faux.

Opérateur de travail pendant

Considérons le premier exemple:

Dans le diagramme de bloc, la table de multiplication sur 3 ressemble à ceci:

Essayez de créer une table de multiplication par 1, 2, 4, 5, 6, 7, 8 et 9. Comment va-t-il ressembler à un organigramme? (Les étudiants constituent une table de multiplication sous la forme d'un diagramme de bloc).

Considérons maintenant les caractéristiques de ce cycle et écrivez-vous à vous-même:

Essayons maintenant de résoudre la tâche à Turbo Pascal.

Résoudre le problème de la sortie 10 entiers sur l'écran en utilisant le cycle Pendant que fais. :

Une tâche:

Pour résoudre cette tâche, rappelons-nous quel type de nombre naturel de chiffres?

Le nombre naturel est appelé une série d'entiers commençant par 1. C'est-à-dire 1, 2, 3, ... et à un nombre N.

Résolu cette tâche:

Une tâche:

Décision:

Programme koshey_vasilisa;

Var v, s: entier;

Commencer.

v: \u003d 18; (Âge Vasilisa)

s: \u003d 27360; (Capital d'entrée Koshchi)

tandis que S.<30000 do

Commencer.

s: \u003d s + 33; (Chaque année de dynamitage s'enrichit)

v: \u003d v + 1; (Chaque année de Vacilisa devient plus âgée)

finir;

writeln ("Vasilisa", V, "Années");

Finir.

La prochaine tâche que vous vous seul résoudrez à la maison, écrivez la tâche:

    Formation de départ, skieur le premier jour a couru à 10 km. Chaque jour suivant, il a augmenté la longueur de la course de 10% de la journée précédente. Déterminez ce que la journée il fonctionnera plus de 20 km, à quel jour le kilométrage total pour tous les jours dépasse 100 km.

Nous nous demandons combien de variables nous aurons et quel type sont-ils? Nous n'avons que 2 variables, l'une aura plus de 20 km pour calculer la course quotidienne et l'autre calculera quel jour le kilométrage total pour tous les jours dépassera 100 km. Quel type sera des variables? Le kilométrage quotidien sera entier (c'est-à-dire un entier) et le deuxième réel (c'est-à-dire un nombre réel ou un numéro de virgule), puisque nous avons 10%, alors s'il est traduit dans le nombre, nous obtenons 0,1. Nous aurons deux cycles dans le programme, le premier cycle pour déterminer le jour où le skieur fonctionne à plus de 20 km, et le second à trouver la journée lorsque le kilométrage total de tous les jours dépasse 100 km.

Maintenant, prenons connaissance avec le prochain type de cycles - ce sont des cycles avec la postcondition.

Vous savez déjà comment organiser un cycle en utilisant l'opérateur tandis que l'opérateur. Rappelez-vous que lors de l'exécution de cet opérateur, l'ordinateur vérifie la valeur de la condition. Si la condition est vraie, la partie exécutive de l'opérateur tandis que l'opérateur sera répétée jusqu'à ce que cette condition accepte la valeur de Faux. Si la valeur de condition est fausse au tout début, le corps de cycle tandis que le corps ne sera pas effectué du tout.

Parfois, lors de la résolution des tâches, il est nécessaire d'effectuer un corps de cycle au moins une fois, puis en vérifiant la condition, déterminez si le corps du cycle se répète à nouveau. Cette tâche effectuera un autre type de cycle - le cycle de répétition.

répéter. (répéter)
(les opérateurs)
jusqu'à ce que <условие>; (Tant que la condition n'est pas vraie)

Cette conception est lue comme ceci:

Considérez le fonctionnement du cycle avec la postlasie:

Les caractéristiques du cycle avec la postlasie:

Le plus goûté utilise maintenant le cycle avec le postcal.

Comparez le cycle avec pré et postcondition:

Comment j'ai dit avant:

Il y a une petite différence dans l'organisation d'un cycle de répétition par rapport à: pour effectuer plusieurs opérateurs dans le cycle de répétition, vous ne devez pas mettre ces opérateurs au début ... Supports de l'opérateur final. Les mots réservés répètent et jusqu'à ce qu'elles soient des crochets de l'opérateur.

Répétition de la construction ... jusqu'à ce que cela fonctionne de la même manière pendant le cycle. La différence est que le cycle tandis que le cycle vérifie la condition avant d'effectuer des actions, tandis que la répétition vérifie la condition après avoir effectué des actions. Cela garantit au moins une action pour compléter le cycle.

Et aussi il y a un général dans ces cycles:

    Faire du vélo ensemble la valeur initiale des variables ,
    inclus dans la condition. État - expression booléen taper.

    Dans le corps du cycle la valeur des variables incluses dans la condition devrait assurez-vous de changer votre valeur Sinon, il y aura une situation de "suspendre".

Pour résoudre la tâche suivante, vous devez rappeler la progression géométrique.

Et maintenant le défi lui-même:

Tout le monde a vu la tâche qui doit être résolue à l'aide d'un cycle avec la postlasie. Vous voyez tous qu'il y a un organigramme, composé à l'aide d'un cycle avec une condition préalable. Regardons en détail, puis je vais donner une tâche. Nous voyons tous que le diagramme de bloc a le début, puis l'entrée de données survient, où i \u003d 7, puisque ce fils est au numéro 7, puisqu'il a pris les deux derniers émeraudes de la poitrine du père, nous donnons donc une valeur égale à deux. Étant donné que le premier fils a pris la moitié de ce qui était dans la poitrine, cela signifie que la différence de progression géométrique est à deux, c'est-à-dire que nous attribuons une valeur égale à deux. Juste la lettre r et montre la différence de progression géométrique. Nous aurons la condition que pendant que nous sommes i\u003e 1 Nous effectuons la séquence d'actions suivante, c'est-à-dire i: I -1, c'est-à-dire que cette action montre que le nombre du prochain fils diminue d'une. Ensuite, nous calculons le déclenchement de la progression de l'action: q \u003d q * r. Cette séquence de deux actions sera effectuée jusqu'à ce que la condition i\u003e 1 devienne false, après quoi la conclusion surviendra à quel point il s'est passé dans la poitrine et le programme se terminera.

Installer des estimations et exprimer à leurs étudiants.

Merci pour les activités participantes et actives. À de nouvelles réunions.

5. devoirs

Les devoirs répètent ce qu'un cycle est qu'un tel cycle avec la poste et la condition préalable, ainsi que la syntaxe de les écrire dans le langage de programmation Pascal . Ensuite, à la maison pour résoudre la tâche sur un skieur en utilisant un cycle avec Post et Provantal et apportez-moi un programme écrit dans un ordinateur portable avec des réponses aux questions définies dans la tâche.

Mots clés: SI cycles. C boucles. Cycle avec post-bandeau. Cycle avec condition préalable. Cycle de verrouillage. Pendant que. Faire pendant. pour. Se rompre. Continuer.

introduction Cycles avec condition préalable.

La solution de tâches pratiques survient constamment à la nécessité de répéter un nombre de fois donné ou avant d'atteindre une condition. Par exemple, retirez une liste de tous les utilisateurs, pour décaler la texture du plan, pour calculer sur chaque élément du tableau de données, etc. En C à ces fins, trois types de cycles sont utilisés: avec prouver, conciliation et cycle pour Avec le compteur (bien qu'il s'agisse d'un nom conditionnel, car le compteur peut ne pas être).

Tout cycle est constitué de corps et de vérification de la condition dans laquelle ce cycle doit être résilié. Le corps du cycle est l'ensemble d'instructions à répéter. Chaque répétition du cycle est appelée itération.

Considérez un cycle avec la condition préalable.

Int i \u003d 0; Alors que je.< 10) { printf("%d\n", i); i++; }

Ce cycle est effectué jusqu'à ce que la condition spécifiée après le mot clé tandis que la Wheele est vraie. Le corps du cycle est deux lignes, l'un affiche un nombre, le second change. Évidemment, ce cycle sera complété 10 fois et affichera
0
1
2
3
Et ainsi de suite à 9.

Il est très important que la condition de quitter le cycle ait jamais été exécutée, sinon elle se produira, et le programme ne sera pas terminé. Par exemple

Int i \u003d 0; Alors que je.< 10) { printf("%d\n", i); }

Dans ce cycle, la variable que je ne change pas, qui sert à déterminer la condition d'arrêt. Le cycle ne sera donc pas terminé.

Int i \u003d 0; tandis que (i\u003e 0) (printf ("% d \\ n", i); i ++;)

Dans ce programme, le cycle, bien sûr, sera terminé, mais en raison de la mauvaise action, il sera fait beaucoup plus de 10 fois. Étant donné que SI ne suit pas le débordement de la variable, vous devrez attendre que la variable débordera et devienne moins de zéro.

Int i; Alors que je.< 10) { printf("%d\n", i); i++; }

Cet exemple a un comportement indéfini. Étant donné que la variable I n'est pas initialisée à l'avance, elle stocke des ordures, à l'avance une valeur inconnue. Avec des contenus différents de la variable I, le comportement changera.

Si le corps de cycle tandis que le corps contient un opérateur, les crochets bouclés peuvent être omis.

Int i \u003d 0; Alors que je.< 10) printf("%d\n", i++);

Ici, nous incremporons la variable I lorsque vous appelez la fonction Printf. Il devrait être évité un tel style de codage. Le manque de crochets figurant, en particulier au début de l'apprentissage, peut conduire à des erreurs. De plus, le code est lu, et les supports inutiles ne gagnent pas grandement les annonces.

Cycles avec postcondition.

C ILC avec une désélection diffère de la vélo tandis que le cycle est vérifié après que le cycle soit exécuté, c'est-à-dire que ce cycle sera répété au moins une fois (contrairement au cycle de temps, qui peut ne pas être effectuée. du tout). Syntaxe de cycle

Faire (corps cyclable) tandis que (condition);

Exemple précédent Utilisation du cycle Do ressemblera à

Int i \u003d 0; faire (printf ("% d \\ n", i); i ++;) tandis que (i< 10);

Considérons un exemple d'utilisation du cycle avec le postlane et la condition préalable. Devons-nous intégrer la fonction.

Figure. 1 fonction d'intégration numérique ∫ a b f x d x

L'intégrale est la somme d'infiniment petit. Nous pouvons soumettre une intégrale comme un montant et les petites valeurs infiniment remplies simplement par de petites valeurs.

∫ a b f x d x \u003d σ i \u003d a b f i h

À partir de la formule, il est clair que nous avons effectivement cassé la zone sous la planification sur une pluralité de rectangles, où la hauteur du rectangle est la valeur de la fonction au point et la largeur est notre étape. Plier la zone de tous les rectangles, nous obtenons ainsi la valeur de l'intégrale avec une erreur.

Rectangles gauche "src \u003d" / images / c_loop_rectangles_left.png "alt \u003d" (! Lang: méthode de fonction d'intégration numérique
Rectangles gauche"> Рис. 2 Численное интегрирование функции методом!}
Rectangles gauche

Soit x 2 la fonction souhaitée. Nous aurons besoin des variables suivantes. Premièrement, la batterie de somme pour stocker l'intégrale. Deuxièmement, les limites gauche et droite A et B, dans la troisième étape h. Nous avons également besoin de la valeur actuelle de l'argument de la fonction X.

Pour trouver l'intégrale, vous devez partir de uNE. avant que b. Avec une étape h.et ajoutez une zone rectangle avec les côtés f (x) et h..

#Inclure. #Inclure. Int main () (double somme \u003d 0,0; double A \u003d 0,0; double b \u003d 1,0; double h \u003d 0,01; double x \u003d a; tandis que (x< b) { sum += x*x * h; x += h; } printf("%.3f", sum); getch(); }

Le programme affiche 0,328.

∫ 0 1 x 2 D x \u003d x 3 3 | 0 1 \u003d 1 3 ≈ 0.333

Si vous regardez l'horaire, on peut voir que chaque fois que nous trouvons la valeur de la fonction dans le point de gauche. Par conséquent, une telle méthode d'intégration numérique est appelée méthode de rectangles à gauche. De même, vous pouvez prendre la bonne valeur. Ensuite, ce sera la méthode des rectangles droits.

Tandis que (X.< b) { x += h; sum += x*x * h; } Rectangles droit "src \u003d" / images / c_loop_rectangles_right.png "alt \u003d" (! Lang: méthode de fonction d'intégration numérique
Rectangles droit"> Рис. 3 Численное интегрирование функции методом!}
Rectangles droit

Le montant dans ce cas sera égal à 0,338. La méthode des rectangles gauche et droite n'est pas très précise. Nous avons effectivement approché (approximé) une horaire lisse de la fonction croissante monotone de l'histogramme. Si vous pensez à un peu, l'approximation peut être effectuée non seulement en résumant des rectangles, mais également en sommant le trapèze.

Trapétes "src \u003d" / images / c_loop_integal_trapezium.png "alt \u003d" (! Lang: fonction d'intégration numérique par méthode
Tapeatissie"> Рис. 4 Численное интегрирование функции методом!}
Tapeatissie

L'approximation avec l'aide de trapezes est en fait une approximation par morceaux de courbes de premier ordre (AX + B). Nous connectons des points sur le graphique à l'aide des segments. Il est possible de compliquer, de connecter des points de connexion non pas par des segments, mais des tranches de parabole, ce sera la méthode Simpson. Si vous compliquez toujours, alors venez à l'interpolation de la spline, mais c'est une autre conversation très longue.

Revenons à nos branches. Considérer 4 cycles.

Int i \u003d 0; Tandis que (i ++< 3) { printf("%d ", i); } int i = 0; while (++i < 3) { printf("%d ", i); } int i = 0; do { printf("%d ", i); } while(i++ < 3); int i = 0; do { printf("%d ", i); } while(++i < 3);

Si vous effectuez ces exemples, on verra que les cycles sont effectués à partir de deux, jusqu'à quatre fois. Cela vaut la peine d'y accorder une attention particulière, car le changement incorrect du compteur de cycle conduit souvent à des erreurs.

Il arrive souvent que nous devons sortir du cycle, sans attendre que certains drapeaux soient soulevés, ni la valeur de la variable changera. À ces fins, l'opérateur sert se romprequi provoque le programme de quitter le cycle en cours.

Décidons une tâche simple. L'utilisateur entre dans le numéro jusqu'à ce que le numéro 0 soit entré, après cela affiche le plus grand de l'entrée entrée. Il y a un accroc ici. Combien de chiffres que l'utilisateur introduira non connu. Par conséquent, nous allons créer un cycle infini et nous le laisserons avec l'aide de l'opérateur. se rompre. À l'intérieur du cycle, nous recevrons des données de l'utilisateur et choisirons le nombre maximum.

#Inclure. #Inclure. int Main () (int Num \u003d 0; int max \u003d num; printf ("pour arrêter, entrer 0 \\ n"); / * cycle infini * / tandis que (1) ("PRINTF (" Veuillez entrer le numéro: "); Scanf ("% d", & num); / * la condition de la sortie du cycle * / si (num \u003d\u003d 0) (cassette;) Si (Num\u003e max) (max \u003d Num;)) Imprimerf ("Max \u003d Num;)) Nombre était% d ", max); getch ();)

Permettez-moi de vous rappeler qu'il n'y a pas de type booléen spécial en Si. Au lieu de cela, il utilise des nombres. Zéro est un mensonge, toutes les autres valeurs sont la vérité. Le cycle tandis que (1) sera effectué sans fin. Le seul point de sortie de ce fait est une condition

Si (num \u003d\u003d 0)

Dans ce cas, nous laissons le cycle en utilisant se rompre; Pour commencer comme étant le réglage maximum 0. L'utilisateur entre dans le numéro, après quoi nous vérifions, zéro ou non. Si ce n'est pas zéro, alors le comparant avec le maximum actuel.

Les cycles infinis sont utilisés assez souvent, car les données d'entrée ne sont pas toujours connues, ou ils peuvent changer pendant l'opération de programme.

Lorsque nous devons ignorer le corps du cycle, mais en même temps, continuez l'exécution du cycle, l'opérateur est utilisé. continuer.. Un exemple simple: l'utilisateur introduit dix numéros. Trouvez la somme de tous les nombres positifs qu'il entra.

#Inclure. #Inclure. int Page principale () (int i \u003d 0; int positivecnt \u003d 0; somme flottante \u003d 0,0f; entrée flottante; printf ("entrez 10 numéros \\ n"); tandis que (i< 10) { i++; printf("%2d: ", i); scanf("%f", &input); if (input <= 0.0) { continue; } sum += input; positiveCnt++; } printf("Sum of %d positive numbers = %f", positiveCnt, sum); getch(); }

L'exemple semble quelque peu attiré par les oreilles, bien qu'il reflète en général la signification de l'opérateur continuer.. Dans cet exemple, variable positivecnt. est un mètre de nombres positifs, sOMME.montant, A. contribution - Variable temporaire pour la saisie de numéros.

Voici un autre exemple. Il est nécessaire que l'utilisateur pénètre dans l'entier plus zéro et moins de 100. Jusqu'à présent, le nombre requis sera saisi, le programme poursuivra l'enquête.

Faire (printf ("s'il vous plaît, entrez numéro:"); scanf ("% d", & n); si (n< 0 || n>100) (printf ("mauvais nombre, essayez à nouveau \\ n"); continuer;) Autres (pause;)) tandis que (1);

Faire du vélo

À propos de la diversité du plus utilisé est le cycle avec le comptoir pour. Sa syntaxe

Pour (<инициализация>; <условие продолжения>; <изменение счётчика>){ <тело цикла> }

Par exemple, retirez les carrés des premiers chiffres.

Int i; pour (i \u003d 1; je< 101; i++) { printf("%d ", i*i); }

L'un des points merveilleux du cycle est que cela peut fonctionner non seulement avec des entiers.

Flotteur num; pour (num \u003d 5.3f; num\u003e 0f; num - \u003d 0,2) (printf ("%. 2f", num););)

Ce cycle sortira de 5,3 à 0,1. Le cycle pour peut ne pas avoir de "blocs" de code, par exemple, peut manquer d'initialisation, la vérification (puis le cycle devient infini) ou changer le compteur. Voici un exemple avec une intégrale mise en œuvre à l'aide du compteur pour

#Inclure. #Inclure. int main () (double somme \u003d 0,0; double A \u003d 0,0; double b \u003d 1,0; double h \u003d 0,01; double x; pour (x \u003d a; x;< b; x += h) { sum += x*x * h; } printf("%.3f", sum); getch(); }

Regardons un morceau de code

Double X; pour (x \u003d a; x< b; x += h) { sum += x*x * h; }

Il peut être changé donc

Double x \u003d a; pour (x< b; x+=h) { sum += x*x*h; }

De plus, en utilisant l'opérateur se rompre, vous pouvez enlever la condition et écrire

Double X; pour (x \u003d a ;; x + \u003d h) (si (x\u003e b) (pause;) somme + \u003d x * x * h;)

Double x \u003d a; pour (;;) (si (x\u003e b) (pause;) somme + \u003d x * x * h; x + \u003d h;)

en outre, utiliser l'opérateur ",", vous pouvez déplacer une partie des actions

Double X; pour (x \u003d a; x< b; x += h, sum += x*x*h) ;

NOTE: Malgré le fait que vous puissiez faire cela, veuillez ne pas le faire! Cela aggrave la lisibilité du code et conduit à des travailleurs difficiles.

Décidons toute tâche pratique plus compliquée. Laissez-nous avoir une fonction f (x). Trouvez un maximum de son dérivé sur le segment. Comment trouver une fonction dérivée numériquement? Évidemment, par définition). La fonction dérivée au point est la tangente de l'angle d'inclinaison.

F x '\u003d d x d y

Prenez le point sur la courbe avec les coordonnées (x; f (x)), déplacements par étape H, nous obtenons un point (x + h, f (x + h)), puis le dérivé sera

D x d y \u003d f (x + h) - f x (x + h - x) \u003d tg α

C'est-à-dire que le ratio de la petite incrément de la fonction à la petite incraction de l'argument. Le lecteur attentionné peut poser une question pourquoi nous avançons sur la fonction, pas de retour. Eh bien, revenons

D X D Y \u003d F x - F (X-H) H \u003d TG β

Prenez la moyenne de ces deux valeurs, nous obtenons

F (x + h) - F (x - h) 2h

En général, la tâche devient maintenant triviale: nous allons du point uNE. jusqu'au point b. Et nous trouvons la valeur minimale de la dérivée, ainsi que le point dans lequel le dérivé prend cette valeur. Pour nous résoudre, nous aurons besoin, comme dans la tâche avec les variables intégrales pour les frontières de la zone de recherche. uNE. et b., valeur actuelle x. et pas h.. De plus, la valeur maximale est nécessaire. maxval et coordonner maxx. Cette valeur maximale. Travailler, prenez la fonction x sin x

#Inclure. #Inclure. #Inclure. int majeur () (double A \u003d 0; double b \u003d 3.0; double h \u003d 0,001; double H2 \u003d H * 2.0; double maxval \u003d a) (a); double maxx \u003d A; double curval; double x; // // double maxx \u003d a; double maxx \u003d A; double curval; double x; // Nous passons dans toute la région à partir de A à B // et nous recherchons un maximum de la première dérivée // à l'aide de la fonction x * péché (x) pour (x \u003d a; x< b; x += h) { curVal = ((x+h)*sin(x+h)-(x-h)*sin(x-h))/h2; if (curVal > Maxval) (maxval \u003d curval; maxx \u003d x;)) printf ("valeur max \u003d% .3f à% .3f", maxval, maxx); getch (); )

À la sortie, le programme émet une valeur maximale \u003d 1,391 à 1,077

La solution numérique donne la même chose (avec une précision des erreurs) résultant comme notre programme.

Cycles imbriqués

Considérons un exemple où les cycles sont intégrés les uns dans les autres. Retirer la table de multiplication.

#Inclure. #Inclure. #Inclure. int Main () (int i, j; // pour chaque i pour (i \u003d 1; i< 11; i++) { // Выводим строку из произведения i на j for (j = 1; j < 11; j++) { printf("%4d", i*j); } // После чего переходим на новую строку printf("\n"); } getch(); }

Dans cet exemple, le premier cycle de variable jE. Investi le deuxième cycle par variable j.. La séquence des actions est telle: d'abord nous entrons dans le cycle jE.Après cela pour le courant jE. 10 fois d'affilée est la sortie des nombres. Après cela, vous devez aller à une nouvelle chaîne. Maintenant, apportons uniquement des éléments sous la diagonale principale

Pour (i \u003d 1; je< 11; i++) { for (j = 1; j < 11; j++) { if (j > i) (pause;) printf ("% 4d", i * j); ) Printf ("\\ n"); )

Comme vous pouvez le constater, l'opérateur se rompre Vous permet de quitter uniquement le cycle en cours. Cet exemple peut être réécrit comme suit.

Pour (i \u003d 1; je< 11; i++) { for (j = 1; j <= i; j++) { printf("%4d", i*j); } printf("\n"); }

Dans ce cas, nous utilisons le premier compteur de cycle du cycle en cours.

Ru-cyrl 18- tutoriel SYPACHEV S.S. 1989-04-14 [Email protégé] Stepan Sypachev. Étudiants.

Toujours pas clair? - écrire des questions sur la boîte