La campana.

Ci sono quelli che hanno letto questa notizia prima di te.
Iscriviti per ricevere articoli freschi.
E-mail
Nome
Cognome
Come vuoi leggere la campana
Senza spam

Un linguaggio algoritmico educativo è un mezzo per registrare algoritmi nella forma, intermedio tra la registrazione algoritmo su un linguaggio naturale (umano) e scrivere un computer (linguaggio di programmazione).

I vantaggi del linguaggio algoritmico educativo includono la sua semplicità, nonché il fatto che l'algoritmo è registrato in russo con un certo numero limitato di parole, il significato e il metodo di consumo di cui è rigorosamente definito. Queste parole sono chiamate parole ufficiali.

Per allocare parole ufficiali tra le altre parole della lingua, li enfatizzano quando scrivi.

Il record dell'algoritmo sul linguaggio algoritmico educativo è costituito da un'intestazione e un corpo dell'algoritmo. Il corpo dell'algoritmo è tra le parole chiave nach. e kon. E rappresenta la sequenza dei comandi algoritmo. Il titolo include il nome dell'algoritmo, che riflette il suo contenuto, l'elenco dei dati di origine (argomenti) e dei risultati.

Un segno dell'intestazione dell'algoritmo è parola chiave alg..

Quindi, l'algoritmo registrato sulla lingua algoritmica educativa ha il seguente modulo:

alg. algoritmo del titolo

arg.ta elenco dei dati di origine

taglio elenco dei risultati

sequenza di comandi algoritmo

Studiare la lingua algoritmica scolastica è consigliabile iniziare con il team di assegnazione, è una delle squadre principali.

È scritto in questo modo:

<переменная> := <выражение>

Segno ": \u003d" Legge "Assegna".

Nel caso in cui il valore è assegnato al valore, include anche il lato destro del comando, succede quanto segue:

1) Il valore dell'espressione registrato sul lato destro del comando di assegnazione viene calcolato utilizzando i valori correnti di tutti i valori inclusi in questa espressione;

2) Una variabile è assegnata un nuovo valore corrente calcolato. In questo caso, il valore precedente della variabile viene distrutto.

Di conseguenza, il comando B: \u003d A + B significa che il valore della variabile A e il risultato risultante diventa un nuovo valore corrente del valore di B viene aggiunto al valore corrente precedente del valore B.

Questo esempio illustra tre proprietà di assegnazione di base:

1) fino a quando la variabile è assegnata un valore, non rimane definito;

2) Il valore assegnato alla variabile è memorizzato in esso fino a quando non viene eseguita la prossima assegnazione di questa variabile;

3) Un nuovo valore assegnato alla variabile sostituisce il suo valore precedente.

Ora facciamo conoscenza di strutture di base, iniziamo con una tale operazione come "Segui". Forma una sequenza di azioni che seguono una dopo l'altra:

azione 1.

azione 2.

. . . . . . . . .

azione N.

Quindi, considera la struttura di base "Branch". Fornisce a seconda del risultato della verifica della condizione (sì o no) la scelta di uno dei percorsi alternativi dell'algoritmo. Ciascuno dei percorsi conduce all'uscita complessiva, quindi il lavoro dell'algoritmo continuerà indipendentemente da quale percorso sarà selezionato. La struttura del ramo esiste in quattro opzioni principali:



1. Se qualcosa;

se un condizione

quella azioni

2. Se qualcosa, altrimenti;

se un condizione

quella azioni 1.

altrimenti azioni 2.

scelta

percondizione 1: Azioni 1

percondizione 2: Azioni 2

. . . . . . . . . . . .

per condizione n: Azioni n

{altrimentiazioni N + 1}

E infine, la struttura di base del ciclo che utilizza la lingua algoritmica scolastica sarà simile a questa.

L'algopritis è un esempio accurato e comprensibile dell'artista per conformarsi alla sequenza di azioni volte a risolvere il compito.

Il nome "Algoritmo" si è verificato dalla forma latina del nome della matematica asiatica centrale al-khorezmi - algoritmi. L'algoritmo è uno dei concetti di base dell'informatica e della matematica.

L'algoritmo performer è un sistema astratto o reale (tecnico, biologico o biotecnico) in grado di eseguire azioni prescritte dall'algoritmo.

Artista Hampactivepiz:

azioni elementari;

sistema di squadra;

Laureato (o ambiente) è l'"habitat" dell'artista. Approveremo, per la lettura dell'artista dal libro di testo scolastico, è un campo cellulare infinito. Anche le pareti e le cellule seashed fanno parte della giunzione. E il loro positivo e la posizione dell'aspetto stesso impostano lo stato della conquista del mezzo.

Ogni esecutore può eseguire comandi solo da alcuni sistemi di comando elenco definiti dal timbro. Per ciascun comando, è necessario specificare le condizioni (poiché gli stati del manuale possono essere eseguiti) e descrive i risultati del comando. Applica, il comando "VVEPS" può essere eseguito se non c'è pareti sopra. Il suo risultato è un turno in una cella in una cella.

Dopo aver chiamato il comando, l'esecutore è costituito da un'azione elementare appropriata.

I fallimenti esecutivi si verificano se il comando è chiamato in uno stato inaccettabile dello stato dello stato.

Di solito il contraente non sa nulla dello scopo dell'aspetto algo. Esegue tutti i comandi ricevuti senza chiedere domande "Perché" e "perché".

Nell'informatica, l'esecutore universale di algoritmi è un computer.

Le principali proprietà degli algoritmi sono le seguenti:

Comprensibilità per l'artista - I.e. L'esecutore dell'algoritmo dovrebbe sapere come eseguirlo.

Discrezione (interruzione, separatezza) - I.e. Gli algoporti dovrebbero essere assegnati il \u200b\u200bcompito di progresso come esecuzione sequenziale dei seguenti passaggi (o più staccati) (passaggi).

OBLINO - I.E. Ogni algoritmo deve essere chiaro, inequivocabile e non lasciare posti per i progressi. Grazie a questa proprietà, l'esecuzione dell'algoritmo è soddisfatta meccanicamente e non sono rimaste ulteriori istruzioni o informazioni sul compito.

Figura (o arto). Questa proprietà è che l'algoritmo deve cercare di provare il compito per il numero finale di passaggi.

Formosità Ciò significa che l'algoritmo del compito è in forma generale, cioè Deve essere Pony per una certa classe di compiti che sono solo nei dati di origine. In questo caso, i dati iniziali possono essere mangiati da una determinata area, che è chiamata area dell'algoritmo.

In pratica, le seguenti forme di rappresentazione di algoritmi sono più comuni:

verbale (scrivendo in linguaggio naturale);

grafica (immagini dei simboli grafici);

pseudocodi (descrizioni semi-formalizzate di algoritmi su un linguaggio algoritmico condizionale, compresi entrambi gli elementi del linguaggio di programmazione e le frasi di un linguaggio naturale, la notazione matematica generalmente accettata, ecc.);

software (testi nei linguaggi di programmazione).

Un modo verbale per registrare gli algoritmi è una descrizione delle fasi consecutive del trattamento dei dati. L'algoritmo è ambientato nella presentazione arbitraria nel linguaggio naturale.

Per esempio. Registra l'algoritmo per trovare il più grande divisore generale (nodo) di due numeri naturali.

L'algoritmo può essere il seguente:

imposta due numeri;

se i numeri sono uguali, prendi qualcuno di loro come risposta e fermarsi, altrimenti continuare l'esecuzione dell'algoritmo;

determinare più dei numeri;

sostituire più tra la differenza più grande e più piccola tra i numeri;

ripeti l'algoritmo dal punto 2.

L'algoritmo descritto è applicabile a qualsiasi numero naturale e dovrebbe portare a risolvere il compito. Assicurati che questo algoritmo sia determinato utilizzando questo algoritmo il più grande divisore comune dei numeri 125 e 75.

Un metodo verbale non è diffuso per i seguenti motivi:

tali descrizioni sono rigorosamente non formalizzate;

soffre di verifica dei record;

regola l'ambiguità dell'interpretazione dei singoli regolamenti.

Il metodo grafico di rappresentare gli algoritmi è più compatto e visivo rispetto a Verbal.

Con una rappresentazione grafica, l'algoritmo è raffigurato come una sequenza di blocchi funzionali interconnessi, ciascuno dei quali corrisponde all'attuazione di una o più azioni.

Quella rappresentazione grafica Chiamato lo schema dell'algoritmo o del diagramma a blocchi.

Nel diagramma a blocchi, ciascun tipo di azione (ingresso dei dati di origine, calcolando i valori delle espressioni, delle condizioni di test, della gestione della ripetizione, della fine dell'elaborazione, ecc.) Corrisponde a figura geometricarappresentato sotto forma di un simbolo di blocco. I simboli del blocco sono collegati da linee di transizione che definiscono la priorità dell'azione.

La tabella 1 mostra i caratteri più utilizzati.

Il blocco di processo viene utilizzato per designare un'azione o una sequenza di azioni che cambiano il valore, la forma di rappresentazione o posizionamento dei dati. Per migliorare la visibilità del circuito, diverse unità di elaborazione separate possono essere combinate in un blocco. La presentazione delle singole operazioni è abbastanza gratuita.

Il blocco "Soluzione" viene utilizzato per designare le transizioni di controllo del controllo. In ogni blocco "Soluzione", la domanda deve essere indicata, una condizione o un confronto che determina.

L'unità "Modifica" viene utilizzata per organizzare strutture cicliche. (La modifica della parola significa modifica, trasformazione). All'interno del blocco, il parametro del ciclo è registrato per il quale è indicato significato iniziale, Condizioni al contorno e fase di modifica del valore del parametro per ciascuna ripetizione.

Il blocco "Processo predefinito" viene utilizzato per indicare appelli agli algoritmi ausiliari, esistenti in modo autonomo sotto forma di alcuni moduli indipendenti e per ricorsi alle subroutine della biblioteca.

Pseudocodice è un sistema di simboli e regole destinati alla registrazione uniforme degli algoritmi.

Occupa un luogo intermedio tra linguaggi naturali e formali.

Da un lato, è vicino al solito linguaggio naturale, quindi gli algoritmi possono essere registrati su di esso e leggere come testo ordinario. D'altra parte, alcuni disegni formali e simboli matematici vengono utilizzati nella pseudocodice, che porta il record dell'algoritmo al record matematico generalmente accettato.

La pseudocodice non ha preso rigide regole di sintassi per i comandi di registrazione inerenti in lingue formali, che facilita il record dell'algoritmo nella fase del suo design e consente di utilizzare un set più ampio di comandi progettati per un artista astratto. Tuttavia, la pseudocode di solito ha alcuni disegni inerenti in lingue formali, che facilita la transizione dalla scrittura a una pseudocodice per registrare l'algoritmo nella lingua formale. In particolare, in pseudocodice, così come in lingue formali, ci sono parole ufficiali, il che significa essere determinato una volta per tutte. Si distinguono nel testo stampato con il carattere in grassetto, e nel testo scritto a mano sottolineato. Non esiste una definizione singola o formale della pseudo-formazione, quindi sono possibili vari pseudocodi, caratterizzati da una serie di parole di servizio e strutture di base (base).

Un esempio di pseudocodice è un linguaggio algoritmico scolastico nella notazione russa (scuola (scuola), descritta nel tutorial A.G. Kushniirenko et al. "Nozioni di base di informatica e informatica", 1991. Questa lingua sarà chiamata semplicemente "lingua algoritmica" in futuro.

Parole di servizio principali

Vista generale dell'algoritmo:

algoritmo di nome ALG (argomenti e risultati)

le condizioni di applicabilità dell'algoritmo

È necessario eseguire un algoritmo

nCH \u200b\u200bDescrizione dei valori intermedi

| Sequenza di comunicazione (algoritmo del corpo)

Parte dell'algoritmo dalla parola ALG ALG alla Parola NCH è chiamata il titolo, e la parte ha concluso tra le parole dell'inizio e dei corpi dell'algoritmo.

Nella frase dell'Alg dopo il nome dell'algoritmo tra parentesi, sono indicate le caratteristiche (ARG, CR) e il tipo di valore (intangibile, sim, lite o log) (per l'argomento) e le variabili di uscita (risultati) . Durante la descrizione di array (tabelle), viene utilizzata la parola di servizio, integrata da coppie di contorno per ciascun indice degli elementi dell'array.

Esempi di offerte ALG:

alleg Volume e cilindro (Arg Mane R, H, Taglio V, S)

alg Roots of the Quar (Arg Mana A, B, C, taglio mee x1, x2, res lite t)

elemento di esclusione ALG (Arg Complex N, Arg Dres Tab A)

aLG Diagonal (Arg Complex N, Arg Communication TAB A, CRA Lit OtVet)

Le offerte sono fornite e non necessariamente. Si consiglia di registrare dichiarazioni che descrivono lo stato dell'ambiente dell'algoritmo esecutivo, ad esempio:

alleg Sostituzione (ARG LIT STR1, STR2, Testo Cropsus Crops))

dano |. Le lunghezze di sostituzione STR1 e STR2 coincidono

È necessario | Ovunque nella linea di testo di sottostringa STR1 sostituita con STR2

aLG Numero di Maxima (Arg Cover N, ARG TAB A, RESH K)

dano |. N\u003e 0.

È necessario | K - il numero di elementi massimi nella tabella A

resistenza ALG (Arg Mane R1, R2, ARG Complex N, COM R)

dano |. N\u003e 5, R1\u003e 0, R2\u003e 0

È necessario | R - Resistenza allo schema

Qui nelle frasi sono dati e necessarie dopo il segno "|" I commenti sono registrati. I commenti possono essere posizionati alla fine di qualsiasi riga. Non sono elaborati dal traduttore, ma facilitano significativamente la comprensione dell'algoritmo.

Gli algoritmi possono essere rappresentati come alcune strutture costituite da elementi di base (I.e. BASIC) separati.

Naturalmente, con questo approccio agli algoritmi, lo studio dei principi di base del loro design dovrebbe iniziare con lo studio di questi elementi di base.

Per la loro descrizione, useremo il linguaggio degli algoritmi e la lingua algoritmica scolastica.

La struttura logica di qualsiasi algoritmo può essere presentata con una combinazione di tre strutture di base:

seguire

ramificatura

Una caratteristica caratteristica delle strutture di base è la presenza di un ingresso e un'uscita.

Parte dell'algoritmo alg. prima della parola nach. chiamato titolo e parte conclusa tra le parole nach. e kon. - Algoritmo del corpo.

In una frase alg. Dopo il nome dell'algoritmo tra parentesi, le caratteristiche (ARG, CR) e il tipo di valori (intangibili, sim, lite, log) sono indicati per tutte le variabili di input (argomenti) e output (risultati).

Quando si descrivono gli array (tabelle) viene utilizzata una parola di servizio tab., completato da coppie di contorno per ciascun indice degli elementi dell'array.

Esempi di offerte alg.:

alleg Volume e cilindro (Arg Mane R, H, Taglio V, S)

alg Roots of the Quar (Arg Mana A, B, C, taglio mee x1, x2, res lite t)

elemento di esclusione ALG (Arg Complex N, Arg Dres Tab A)

aLG Diagonal (Arg Complex N, Arg Communication TAB A, CRA Lit OtVet)

Parole di specie dano. e abbiamo bisogno Non obbligatorio. Si consiglia di registrare dichiarazioni che descrivono lo stato dell'ambiente dell'algoritmo esecutivo, ad esempio:

Alleg Sostituzione (ARG LIT STR1, STR2, AGR ACCIACCIO COLTAGGIO) DANO | STR1 e STR2 STR2 STR2 Lunghezza | Ovunque nella linea di testo di sottostringa STR1 sostituita con STR2

ALG Numero di Maxima (Cover Arg N, Arg Mest Tab A, Resh K) Dana | N\u003e 0nado | K - il numero di elementi massimi nella tabella A

Resistenza ALGA (Arg Mane R1, R2, ARG Complex N, Cole R) Dange | N\u003e 5, r1\u003e 0, r2\u003e 0nado | R - Resistenza allo schema

Qui nelle frasi dano. e abbiamo bisogno Dopo il segno "|" I commenti sono registrati. I commenti possono essere posizionati alla fine di qualsiasi riga. Non sono elaborati da un traduttore di computer, ma facilitano in modo significativo la comprensione dell'algoritmo.

Programmazione delle squadre scolastiche AYA

Operatore dell'applicazione. Utilizzato per calcolare le espressioni e assegnando loro valori variabili. Vista generale dell'operatore: A: \u003d B, dove il segno ": \u003d" indica l'operazione di assegnazione, I.e. Il comando per sostituire il valore precedente della variabile A, in piedi sul lato sinistro, sul valore calcolato dell'espressione nel lato destro.


Per esempio, a: \u003d (B + c) * peccato (PI / 4);

i: \u003d I + 1 .

Per ingresso e uscita Squadre di utilizzo dei dati

· ingresso Nomi di variabili

· produzione Nomi di variabili, espressioni, testi.

Per Ramificatura L'algoritmo utilizza i comandi se un e scelta.

Per un'organizzazione cicli - Teams. per e fino aDescritto sotto.

Un esempio del record dell'algoritmo nella lingua scolastica.

Squares del somma ALG (ARG n., rimedio S.) Dano |. N\u003e 0nado | S \u003d 1 * 1 + 2 * 2 + 3 * 3 + ... + N * nach iO. ingresso n.; S. : =0 nc.per i da 1 a n s : \u003d S + i * i kc. Conclusione "S \u003d", Skon

Algoritmico Y3YK. - Un sistema artificiale dei fondi linguistici, che ha opportunità espressive sufficienti a garantire che con il suo aiuto, è possibile impostare qualsiasi congiunzione generale rilevabile sulla classe definita, l'esecuzione del quale conduce da variando entro determinati limiti dei dati di origine al risultato desiderato . Questo tipo di prescrizione è chiamato algoritmo , da dove il termine "lingua algoritmico" stessa. In uso sistematico, è stato introdotto nel 1958 Bodutenbruh. Storicamente, il concetto del linguaggio algoritmico è stato formato negli anni '50. 20 V. Nel processo di diventare programmazione computer come disciplina scientifica indipendente. Tuttavia, le origini teoriche di questo concetto sono tracciate nelle opere degli anni '30. S.K. Klini, E.L.Posta, A.M.Tytura e A.Fercha per chiarire il concetto matematico generale dell'algoritmo. Attualmente, la teoria delle lingue algoritmiche, nonché i problemi associati al loro sviluppo e all'uso, è una delle sezioni più importanti di informatica.

In un aspetto logico-linguistico e gnoseologico, le lingue algoritmiche sono uno dei modelli imperativi (inclinazione imperativa), e quindi eseguire, da un lato, come mezzo per fissare le conoscenze operative e sull'altro - come uno strumento di macchina, macchina uomo o anche solo comunicazioni umane. In un breve periodo di tempo, le lingue algoritmiche si sono trasformate in un nuovo agente cognitivo, sono entrate in modo organico in attività scientifiche e pratiche di una persona. Di solito, fanno il requisito della "versatilità", che è che è necessario avere la possibilità di modellare con il loro aiuto di qualsiasi algoritmo tra quelli che danno qualsiasi raffinatezza. concetto generale Algoritmo (ad esempio, macchine per le macchine). L'assoluta accuratezza della sintassi del linguaggio algoritmico non è necessario in tutti i casi. È obbligatorio in considerazione della natura significativa. Ma in certe situazioni (ad esempio, quando i testi registrati su qualsiasi linguaggio algoritmico iniziano ad agire come mezzo di comunicazione con un computer) questo linguaggio algoritmico deve essere decorato sotto forma di un appropriato lingua formalizzata con sintassi chiaramente descritta e accuratamente dato semantico le sue categorie grammaticali. Il luogo centrale in tali lingue algoritmici occupano i testi chiamati programmi (in realtà, sono il concetto dell'algoritmo espresso). Il concetto del programma è formulato in termini puramente strutturali di sintassi di questa lingua, senza alcun appello alle categorie semantiche. La descrizione della procedura di esecuzione del programma è anche considerata esattamente la stessa. Pertanto, come un esecutore di algoritmi registrati su lingue algoritmiche formalizzate, non solo una persona, ma anche dotata di un dispositivo automatico appropriato, ad esempio, il computer. Le lingue algoritmiche "teoriche" (come la lingua delle macchine di tentazione o la normale algoritmi di Markov) sono alla base teoria generale Algoritmi.

Lingue algoritmiche "pratiche" - cosiddette Lingue di programmazione per computer (attualmente ci sono più di mille) - utilizzati nella pratica delle soluzioni della macchina di un'ampia varietà di compiti nella loro natura. Nelle prime fasi della programmazione, "Lingue algoritmiche" orientate alla macchina "(le cosiddette" lingue di basso livello "), tenendo conto della struttura o anche delle caratteristiche di specifiche macchine informatiche (sistema di comandi, caratteristiche e struttura della memoria , eccetera.). Poi hanno cambiato linguaggio algoritmico "orientato ai problemi" (lingue di alto livello), che hanno liberato l'utente dalla necessità di concentrarsi sulle macchine di un certo tipo e quindi l'attenzione matematica molto più grande sui suoi sforzi. L'ulteriore sviluppo dell'idea del linguaggio algoritmico è stato i linguaggi di programmazione più generale, non necessariamente una natura algoritmica. Come le lingue algoritmiche, tali lingue sono in definitiva finalizzate a ricevere software macchinaMa in molti casi i loro testi consentono una certa libertà in adempimento e, di norma, forniscono solo materiale per la sintesi degli algoritmi desiderati, e non questi algoritmi stessi. La penetrazione onniciente delle macchine informatiche in sfere scientifiche, culturali e sociali porta ad un significativo aumento del ruolo delle lingue algoritmiche nella vita della società, e questo è espresso, in particolare, nel fatto che gli algoritmi e i loro programmi Implementarli (cioè, in definitiva, testi su alcune lingue algoritmici), la natura delle risorse reali del potenziale economico, scientifico e culturale della società è sempre più acquisito, che a sua volta provoca un numero significativo di problemi metodologici e gnoseologici gravi metodologici. Inoltre, l'uso di tutte le espansioni (fino ad ogni giorno) di lingue algoritmiche porta alla creazione di uno stile speciale di pensiero e il rapporto del pensiero di questo tipo con matematico tradizionale è anche un problema metodologico importante e poco sviluppato.

Letteratura:

1. Knut D.Programmazione dell'arte per computer, vol. 1-3. M., 1976;

2. Ershov A.P.Introduzione alla programmazione teorica: conversazioni sul metodo. M., 1977;

3. Dietstra E.Disciplina di programmazione. M "1978.

Il computer può eseguire solo il programma se i comandi contenuti in esso sono presentati nel codice della macchina binario, I.e. Specificato nella lingua il cui alfabeto è costituito da unità logiche e zeri. Per i primi computer, il programma è stato effettuato direttamente nei codici della macchina, che ha richiesto un'elevata qualificazione dei programmatori e dei costi elevati del lavoro, quindi negli anni '40, è iniziato lo sviluppo dei linguaggi di programmazione, che nel loro vocabolario sarebbe il più vicino possibile possibile al linguaggio naturale della persona. Tali linguaggi di programmazione sono chiamati algoritmico.

Un passo intermedio verso lo sviluppo delle lingue algoritmiche è stata la lingua Assemblatore. Nell'assemblatore, le squadre sono presentate numeri binari, ma sotto forma di combinazioni di simboli (codici mnemonici), che possono riprodurre il significato del team, che elimina in modo significativo le difficoltà e le carenze della programmazione nel linguaggio della macchina. Tuttavia, l'assemblatore è anche inerente agli svantaggi - questa è una lingua orientata alla macchina, e l'assemblatore viene creato per ciascun computer. La programmazione sull'assemblatore richiede un programmatore di una buona conoscenza del computer (dispositivo) del computer ed è associata a costi significativi del manodopera, allo stesso tempo utilizza con precisione l'assemblatore per utilizzare le risorse del computer (memoria, velocità) nel Programma, quindi l'assemblatore è ancora diffuso tra i programmatori professionali.

Il primo linguaggio algoritmico è diventato Fortran.creato nel 1957. Professionisti iBM. Sotto la guida di John Becus. Ora ci sono molte lingue algoritmiche: Pascal, C, Algol, PL1, Basic, Lisp, Prolog e molti altri.

Le lingue algoritmiche e gli assemblatori appartengono alle lingue della codifica simbolica, cioè. Alle lingue che operano non con i codici della macchina, ma i simboli simbolistici condizionali, pertanto, i programmi elaborati in queste lingue non possono essere eseguiti direttamente sul computer. In modo che tale programma sia guadagnato, il suo testo deve essere convertito in codici a macchina. Per questo, ci sono programmi speciali: traduttori (traduttori). Distinguere 2 tipi. compilatore del traduttore. e interprete. Compilatore Traduci il programma contemporaneamente, e solo dopo che è possibile eseguirlo. Interprete - Questo è un traduttore più semplice, trasmette sequenzialmente gli operatori del programma e lo esegue anche in parti.

21) La struttura del programma in c / c ++.

Il programma di lingua C ++ è composto da funzioni , descrizioni e direttive preprocessore . Una delle funzioni dovrebbe avere un nome principale. . Il programma inizia dal primo operatore di questa funzione. La definizione più semplice della funzione ha il seguente formato:


Di norma, la funzione viene utilizzata per calcolare qualsiasi valore, quindi prima che il nome della funzione indica il suo tipo. Di seguito sono riportate le informazioni più necessarie sulle funzioni:

  • se la funzione non deve restituire un valore, viene specificato il tipo di void:
  • il corpo della funzione è il blocco e, quindi, è bretelle;
  • le funzioni non possono essere investite;
  • ogni operatore termina con un quadrante virgola (ad eccezione di un operatore composito).

Un esempio di struttura del programma contenente funzioni principali, FL e F2:

Il programma può consistere in diversi moduli (file sorgenti).

Diversi commenti sull'ingresso / output in C ++

In C ++, non ci sono strumenti I / O integrati - viene effettuato utilizzando funzioni, tipi e oggetti contenuti nelle librerie standard. Vengono utilizzati due metodi: Funzioni ereditate dagli oggetti C e C ++.

Le funzioni di ingresso / uscita principali con:

int Scanf (Cost Char * Formato, ...) // Invio
Int PrintF (Cost Char * Formato, ...) // Conclusione

Eseguono ingresso e uscita formattati di un numero arbitrario di valori in conformità con la stringa formato formato. La stringa di formato contiene simboli che vengono copiati sul flusso (sullo schermo) o sono richiesti dal flusso (dalla tastiera) quando si immettono e la specifica della trasformazione che inizia con il valore di%, che quando si inserisce e l'uscita è sostituita da specifica valori.

Un esempio di un programma che utilizza la funzione I / O in stile con:

#Includere.
Int principale () (
int i;
PrintF ("Inserisci un intero \\ P");
Scanf ("% D", & i);
Printf ("Hai inserito il numero% d, grazie!", I);
Ritorno 0;
}

La prima riga di questo programma: una direttiva preprocessore, in cui è inserito il file di intestazione contenente la descrizione delle funzioni I / O utilizzate nel programma delle funzioni I / O (in questo caso, le staffe angolari sono l'elemento del linguaggio). Tutte le direttive di preprocessore iniziano con un segno #.

La terza riga è una descrizione della variabile di tipo Integer denominata I.

La funzione PrintF nella quarta riga visualizza l'invito "Inserisci un intero intero" e va a nuova stringa In conformità con la sequenza di controllo \\ n. La funzione Scanf inserisce l'intero inserito dalla tastiera alla tastiera alla variabile I (sign e significa il funzionamento di ottenere l'indirizzo) e il successivo operatore visualizza la stringa specificata in essa sostituendo la specifica della trasformazione
Il significato di questo numero.

Ma cosa appare lo stesso programma usando la libreria di classe C ++:

#Includere.
Int principale () (
int i;
Cout.<< "Введите целое число\\ N."; Cin \u003e\u003e I;
Cout.<< "Вы ввели число " << i << ", спасибо!";
Ritorno 0;
}

Il file di intestazione è una descrizione del set di classi per l'ingresso / uscita. Definisce gli oggetti standard di flusso CIN per inserire la tastiera e il cout da visualizzare sullo schermo, così come il funzionamento della stanza nel flusso.< < и чтения из потока >>.

22) Alfabeto e identificatori in c / c ++.

ALFABETO
Capitale e lettere latine minuscole e segno di sottolineatura;
Numeri arabi da 0 a 9;
Simboli ciechi: spazio, schede, simboli di transizione verso un bar.
Segni speciali:

Lexemes della lingua sono formate dai simboli dell'alfabeto:
identificatori;
parole chiave (riservate);
Operazioni;
costanti;
Separa (parentesi, punto, virgola, veicoli spaziali).

Identificatori
Lettere latine, numeri e un segno di sottolineatura possono essere utilizzati nell'identificatore;
Lettere maiuscole e minuscole differiscono;
Il primo carattere dell'identificatore può essere la lettera o un segno di sottolineatura, ma non una cifra;
I nomi all'interno dei nomi non sono ammessi;
La lunghezza dell'identificatore secondo lo standard non è limitato, ma alcuni compilatori e collegamenti impongono restrizioni su di esso;
L'identificatore non dovrebbe coincidere con le parole chiave;
Non è consigliabile iniziare gli identificatori dal simbolo di sottolineatura (può coincidere con i nomi delle funzioni o delle variabili del sistema);
Su identificatori utilizzati per determinare le variabili esterne;
Ci sono limitazioni del linker (l'uso di vari linker o versioni del linker impone requisiti diversi sui nomi delle variabili esterne).

Parole chiave c ++.

23) Tipi di dati interi in c / c ++.

Un intero tipo di dati è progettato per rappresentare i soliti interi nella memoria del computer. Il tipo principale e più comunemente comune è il tipo int.. Molto meno spesso usa le sue varietà: corto (breve intero) e lungo. (intero lungo). Inoltre, il tipo di tipo include char. (simbolo). Inoltre, se necessario, è possibile utilizzare il tipo lungo lungo. (Pre-rendering lungo!), che non è definito dallo standard, ma è supportato da molti compilatori C ++. Per impostazione predefinita, tutti i tipi intere sono iconico.. Il bit senior in tali numeri determina il segno del numero: 0 - il numero è positivo, 1 è un numero negativo. Oltre ai numeri iconici su C ++, è possibile utilizzare insensibile. In questo caso, tutte le scariche sono coinvolte nella formazione di un numero intero. Durante la descrizione non insorsa, la parola è aggiunta unsigned. (nessun segno).

Sommario Tabella dei tipi di dati Iconic Integer:

Tipo di dati Dimensioni, Byte. Gamma di valori
Char. -128 ... 127
Corto -32768 ... 32767
int. -2147483648 ... 2147483647
Lungo. -2147483648 ... 2147483647
Lungo lungo. -9223372036854775808 ... 9223372036854775807

Tabella riassuntiva dei tipi di dati integer non firmati:

Tipo di dati Dimensioni, Byte. Gamma di valori
Char non firmato. 0 ... 255
Corto non firmato. 0 ... 65535
Int non firmato (puoi semplicemente non firmare) 0 ... 4294967295
A lungo non firmato. 0 ... 4294967295
A lungo non firmato a lungo. 0 ... 18446744073709551615

Ricorda i valori limite, in particolare per 4 o 8 byte, non ne vale la pena, è sufficiente sapere almeno una specie di ordine di questi valori, ad esempio, digitare int. - circa 2 · 10 9.

In pratica, si consiglia di utilizzare il principale tipo intero ovunque, cioè. int.. Il fatto è che i dati del tipo intero principale sono quasi sempre elaborati più velocemente di altri dati dei dati. Brevi tipi ( char., corto) Adatto per la memorizzazione di grandi array di numeri per salvare la memoria, a condizione che i valori degli elementi non vanno oltre i limiti per questi tipi. I tipi lunghi sono necessari in una situazione quando non è sufficiente il tipo int..

24) Tipo di dati in lingua C / C ++.

Una caratteristica dei numeri reali (validi) è che nella memoria del computer, sono quasi sempre memorizzati approssimativamente e quando si esegue operazioni aritmetiche su tali dati, viene accumulato un errore computazionale.

Ci sono tre tipi di dati reali: galleggiante, doppio. e lungo doppio.. La cosa principale è il tipo doppio.. Quindi, tutte le funzioni matematiche del funzionamento predefinito con precisione con il tipo doppio.. La tabella seguente mostra le principali caratteristiche dei tipi reali:

Un tipo lungo doppio. Attualmente, come regola, coincide con il tipo doppio. E in pratica di solito non è applicato. Quando si utilizzano i vecchi compilatori a 16 bit digitano i dati lungo doppio. Hanno una dimensione di 10 byte e forniscono accuratezza a 19 cifre decimali.

Si consiglia di utilizzare solo il tipo ovunque. doppio.. Lavorare con esso è sempre più veloce, meno probabilità di notare la perdita di precisione con un gran numero di calcoli. Un tipo galleggiante Può essere utile solo per la memorizzazione di grandi array, a condizione che sia sufficiente per risolvere il compito.

25) Tipo di dati simbolo in c / c ++.

Nello standard C ++, non vi è alcun tipo di dati che potrebbe essere considerato davvero simbolico. Per presentare informazioni simboliche ci sono due tipi di dati adatti a questo scopo: questi sono tipi char. e wchar_t.Sebbene entrambi questi tipi siano essenzialmente tutti i tipi. Ad esempio, puoi prendere il simbolo "A" e dividerlo al numero 2. A proposito, cosa succede? Suggerimento: simbolo di uno spazio. Per i tipi simbolici "normali", ad esempio, in Pascal o C #, sono proibiti operazioni aritmetiche per i simboli.

Un tipo char. Utilizzato per rappresentare i caratteri in conformità con il sistema di codifica ASCII (American Standard Code for Information Interchange - American Standard Information Codice di scambio). È un codice a sette bit, è sufficiente per la codifica di 128 caratteri diversi con codici da 0 a 127. I simboli con i codici da 128 a 255 sono utilizzati per codificare font nazionali, caratteri pseudografici, ecc.

Un tipo wchar_t. Progettato per funzionare con un set di caratteri per la codifica che non è sufficiente per 1 byte, ad esempio, Unicode. Tipo di dimensione wchar_t. Di solito è uguale a 2 byte. Se il programma deve utilizzare costanti stringa come wchar_t.Quindi sono registrati con il prefisso L., ad esempio, l "parola".

26) Assegnazione dell'operatore e operatore vuoto in c / c ++

Operatore dell'applicazione - Questo è l'operatore più comune. Il suo scopo è quello di assegnare un nuovo valore di qualsiasi variabile. C ++ ha tre forme di questo operatore.

1)Semplice operatore di assegnazione Scritto in questo modo:

variabile \u003d espressione;

Questo operatore funziona come segue: Inizialmente, viene calcolata l'espressione scritta a destra del simbolo dell'operazione. = (uguale), quindi il risultato è assegnato alla variabile in piedi a sinistra del segno = . Il tipo di risultato deve coincidere con il tipo di variabile registrata a sinistra o per essere citata.

A sinistra del segno = Potrebbe esserci solo una variabile, è anche possibile scrivere la costante e la variabile e in generale l'espressione di qualsiasi complessità.

Esempio di operatori

y \u003d x + 3 * r;

s \u003d peccato (x);

2)Assegnazione multipla - In tale operatore, in successione a destra a sinistra, diverse variabili sono assegnate lo stesso valore, ad esempio:

a \u003d b \u003d c \u003d 1;

Quindi è possibile determinare immediatamente, ad esempio, in un triangolo equilatero, tutte le parti sono uguali allo stesso numero 1. L'operatore di cui sopra è equivalente all'esecuzione sequenziale di tre operatori:

Naturalmente, è più facile per noi registrare un operatore e non tre. Il programma si trasforma in più corto, il testo sembra naturalmente, e questo design funziona un po 'più velocemente.

3)Assegnazione con l'esecuzione simultanea di qualsiasi operazione In generale, è scritto così:

sign_poratration variabile \u003d espressione;

ed equivalente alla registrazione

variabile \u003d espressione di segno di segno variabile;

Ad esempio, l'operatore:

s + \u003d 5; // 1a opzione.

fa lo stesso dell'operatore

s \u003d s + 5; // 2 ° opzione.

vale a dire: prendi il vecchio valore dalla variabile s.aggiungi il numero Numero. 5 e il valore ricevuto di nuovo alla variabile s..

Come puoi vedere, registrando la registrazione più breve della versione della versione della seconda versione e viene eseguita più velocemente, poiché nella versione da 1a dell'indirizzo della variabile s. Viene calcolato 1 volta e nella seconda versione - due volte.

Operatore vuoto.

Un operatore vuoto è un operatore che non soddisfa nulla. Perché hai bisogno di un operatore "inutile"?

Un operatore vuoto viene utilizzato nei casi in cui è necessaria la sintassi della lingua per registrare qualsiasi operatore, e in base alla logica del programma, non faremo qualcosa. Pertanto, potrebbe essere richiesto un operatore vuoto nell'istruzione dei rami quando è necessario qualsiasi ramo per eseguire qualsiasi cosa, al fine di determinare l'etichetta per andare al testo del programma, e talvolta per il corpo del ciclo vuoto.

L'operatore vuoto è un singolo simbolo ; (punto con la virgola), ad esempio:

c \u003d A + B; ;

Ecco il primo carattere ; (Punto con la virgola) completa l'operatore di assegnazione e il secondo carattere ci dà un operatore vuoto. In questa situazione, l'operatore vuoto non è necessario affatto (ma non è un errore sintattico!), Viene data solo per la spiegazione. Più esempi "ragionevoli" di utilizzo di un operatore vuoto saranno elencati in seguito in argomenti pertinenti.

27) Operazioni aritmetiche nella lingua C / C ++.

Queste sono le operazioni più utilizzate. Il loro significato è vicino a ciò che è conosciuto dal corso della matematica. Quindi, elencali:

La priorità delle operazioni di aggiunta e sottrazione è inferiore alla moltiplicazione, alla divisione e al calcolo del residuo. Per modificare la procedura per il calcolo, usano staffe rotonde, ad esempio, per la moltiplicazione su 2 Quantità di due numeri UN. e B. Tu puoi scrivere:

Ulteriore. Come si può vedere dai risultati ottenuti, in c ++ un segno / significa due diverse operazioni. Se uno o entrambi gli operandi sono reali, allora una divisione comune viene eseguita se entrambi gli operandi sono integer, la divisione viene eseguita e il risultato sarà un intero tipo. L'utilizzo di questa operazione richiede una maggiore assistenza, ad esempio, se si programma il calcolo dell'espressione matematica

letteralmente, cioè Così:

1/3 * peccato (2 * x)

quindi il risultato è indipendentemente dal valore X. sarà sempre zero, dall'espressione 1/3 Significa la divisione di un focus. Per risolvere il problema, è sufficiente uno degli operandi per rendere reale

1.0 / 3 * peccato (2 * x)

Funzionamento del calcolo del residuo ( % ) Applicabile solo per gli operandi interi.

Segno cambia. Operato universitario " - "Significa cambiare il segno. Come si può vedere dalla tabella comune di tutte le operazioni, ha una priorità molto alta - superiore a, ad esempio, un'operazione di moltiplicazione. Quindi, in espressione

inizialmente, viene eseguito un cambio di segno per UN.e quindi moltiplicazione -UN. sul B..

Per accoppiato, c'è un'operazione unary Plus.. può essere scritto

Per quali scopi è usare? È difficile da dire. Ma c'è un'opportunità così.

Più interessante, e soprattutto, le operazioni di Autoways e Autumi sono molto comunemente comuni.

La campana.

Ci sono quelli che hanno letto questa notizia prima di te.
Iscriviti per ricevere articoli freschi.
E-mail
Nome
Cognome
Come vuoi leggere la campana
Senza spam