Qualsiasi linguaggio di programmazione è pieno di una varietà di parole chiave, funzioni o classi. Di regola, tutti usano l'inglese, che descrive metodi o argomenti. In alcuni ambienti ci sono semplicemente le abbreviazioni delle funzioni della macchina. Ciò ha notevolmente ostacolato lo sviluppo dello sviluppo nelle fasi iniziali. Al fine di aumentare la velocità di comprensione, è stata creata una serie di linguaggi di programmazione algoritmica speciali, che consistevano in parole chiare e accessibili e nelle loro combinazioni, chiare anche per una persona inesperta.
Per comunicare con i primi computer sono stati utilizzati linguaggi di programmazione il più vicino possibile al codice macchina, composto da zero e uno. Naturalmente, ricordare molti comandi era un compito molto difficile. Inoltre, il metodo di allocazione della memoria durante la programmazione è stato completamente imposto alle spalle dello sviluppatore. E se ha fatto un piccolo errore, ha dovuto prima rifare tutto.
Un ruolo importante nella transizione dal linguaggio macchina a una persona più appropriata è stato svolto da un assemblatore di linguaggio di programmazione di basso livello. Ha usato valori e simboli mnemonici. Ciò ha semplificato il compito dello sviluppatore, poiché ora poteva costruire in modo più efficiente i suoi algoritmi da combinazioni di istruzioni di controllo e codici numerici. Nonostante tutta la sua flessibilità e potenza, il linguaggio era ancora difficile da padroneggiare.
Per l'addestramento nello sviluppo e gli algoritmi nelle istituzioni educative, è iniziata l'introduzione del linguaggio di programmazione BASIC. Conteneva già molti comandi, parole chiave, comprensibili allo studente. BASIC è ancora utilizzato per padroneggiare le basi della programmazione.
Con la creazione del primo linguaggio di programmazione algoritmica - Algol - lo sviluppo degli algoritmi ha subito un'accelerazione significativa.
Se ti allontani dalla teoria e dalle definizioni secche, allora l'algoritmo è una sequenza di azioni volte a risolvere il problema. Nonostante tutta l'eleganza dell'espressione, una persona incontra questo concetto ogni giorno. Ad esempio, per bere il tè, è necessario eseguire la seguente sequenza:
Questa sequenza è molto semplificata, ma è l'algoritmo più semplice.
Proprio come una persona, un computer è in grado di eseguire una sequenza specifica di attività. Tuttavia, al fine di comprenderli chiaramente, bisogna tenere presente che per i computer ci sono molte nozioni che sono ovvie per le persone. Inoltre, l'algoritmo deve descrivere accuratamente tutte le azioni necessarie. Per questo scopo, e serve come un linguaggio algoritmico che crea un ponte tra la macchina e l'uomo.
Algoritmico: un linguaggio formale che descrive gli algoritmi che devono essere eseguiti sui computer. Di norma, non è legato ad alcuna architettura della macchina. Questo aiuta ad aumentare e velocizzare significativamente la scrittura del codice. Come esempio vivido - il linguaggio algoritmico BASIC. Anche Pascal e C si sono dimostrati popolari perché avevano una sintassi e una velocità di apprendimento semplici.
La struttura è implementata in modo tale che le procedure descritte nel codice vengano eseguite una dopo l'altra. Questo è un algoritmo: un compito. Questo è simile alla creazione di funzioni o metodi in linguaggio C e Java.
Tutto il codice è generato da parole chiave che descrivono un evento o una variabile.
Un rappresentante di spicco del linguaggio dipendente dalla macchina è l'assemblatore. La programmazione su di essa si riduce a specificare il traduttore con segni speciali, cosa e dove spostare o quale area dati da riempire. Dal momento che la sintassi dell'assemblatore è più simile a una macchina, è piuttosto difficile studiare e scrivere codice su di essa. Qui sotto puoi vedere come possono apparire i comandi per i diversi processori.
Pertanto, è stato creato un linguaggio formale o algoritmico con un gran numero di parole chiave e nomi leggibili dall'uomo.
Un linguaggio algoritmico è costituito da parole chiave, che sono abbreviazioni per la designazione completa di azioni o variabili. Ciò consente di ridurre la lunghezza del codice, pur mantenendo chiaro.
L'elenco di queste parole chiave si riferisce al titolo e alla designazione del corpo dell'algoritmo. E qui ci sono i lessemi per le variabili:
Il seguente elenco di parole viene utilizzato per organizzare i meccanismi di ramificazione e di looping.
Il linguaggio di programmazione algoritmico aiuta a costruire varie strutture che producono funzioni computazionali in una forma conveniente. In generale, qualsiasi lingua può utilizzare diversi meccanismi specifici e le loro combinazioni.
Quando si progetta questo tipo di struttura, l'esecuzione del codice avviene direttamente riga per riga. Un esempio generale può essere espresso come:
alg La somma di due numeri (arg intero a, b, res intero S)
presto
input a, b
S: = a + b
uscita "S =", S
gioco
In questo esempio, viene calcolata la somma di due numeri immessi dall'utente. All'inizio, la parola "al" indica che l'algoritmo inizia e descrive brevemente ciò che fa. Le parentesi definiscono gli argomenti richiesti per il programma e la variabile che funge da contenitore per la memorizzazione dei risultati. Segue la parola chiave "nach", che mostra l'inizio immediato dell'esecuzione di espressioni e procedure. Accanto al "principio" è possibile definire e alcune variabili intermedie.
Nel corpo dell'algoritmo, la parola chiave "input" prende i dati dall'utente e li scrive in variabili. Quindi vengono sommati e la loro somma viene assegnata a S. Prima della fine dell'algoritmo, il risultato del programma viene visualizzato sullo schermo tramite la parola chiave "output". Questa registrazione in un linguaggio algoritmico è tipica di molti altri ambienti di programmazione.
Il corso del programma non deve sempre essere eseguito linea per linea. A volte è necessario definire o modificare il valore di una variabile a seconda della situazione. Ad esempio, a condizione che x = 0, non dividere per x.
Il linguaggio di programmazione algoritmica per questo utilizza diverse varianti di costruzioni e le parole chiave "se", "quindi", "altrimenti" o "scelta". Dopo aver stabilito la condizione "se", verrà determinato il criterio di transizione verso un altro ramo. Ad esempio:
se x = 0
allora y = 1
tutto
In questo modo, è possibile modificare i valori delle variabili in base ad altri fattori. Questo esempio non copre completamente tutte le possibili implementazioni. Pertanto, oltre al design, viene applicata la parola chiave "altrimenti". Ti consente di spostarti su un altro ramo se la condizione non corrisponde ai criteri selezionati.
se x = 0
allora y = 1
altrimenti y = 0
tutto
Cioè, nel caso in cui x non sia uguale a zero, anche y verrà resettato, indipendentemente dal valore che aveva prima.
Un mezzo più conveniente per implementare una scelta multipla è la costruzione della "scelta". Ti permette di risolvere diverse condizioni. Quando uno di questi si innesca, verrà eseguita l'azione specificata per esso.
la scelta
con x = 0: y = 0
con x = 1: y = 1
con x = 2: y = 2
tutto
Questo esempio dimostra la dipendenza della variabile y su x. Il programma esegue tutti i dati e confronta il valore corrente di x con quello specificato nella condizione. Quando viene trovata una corrispondenza, esegue l'azione successiva. Questo design può anche essere combinato con la parola chiave "altrimenti" per soluzioni più flessibili quando nessuna delle condizioni ha funzionato.
I cicli svolgono un ruolo molto importante nella programmazione. Praticamente nessuno sviluppo può fare a meno dell'implementazione di questo design. Nel caso generale, i cicli risolvono ripetutamente il problema di eseguire azioni dello stesso tipo con più variabili. Ciò è utile, ad esempio, quando si riempiono gli array di dati utilizzando una formula nota, ordinandola o contando alcuni valori.
La parola chiave "ciao" ti consente di organizzare un ciclo in cui una certa azione verrà ripetuta fino a quando una condizione non sarà soddisfatta. Ad esempio:
nts mentre x <= 3
y: = y + x
x: = x + 1
KC
In questo esempio, y aumenterà fino a quando x è maggiore di 3. Affinché il loop sia infinito, x deve essere cambiato in una grande direzione in ogni passaggio, ad esempio 1, che fa la seconda riga di codice.
La parola chiave "for" viene applicata a un certo intervallo di numeri, che deve essere ripetuto in sequenza, eseguendo qualsiasi azione con essi. Questa costruzione viene utilizzata quando è noto un numero finito di elementi.
La sua sintassi è:
nts per x da 1 a 3
y: = y + x
KC
Le parole ufficiali "da" e "a" indicano l'intervallo di valori da cercare. Quindi, nella prima iterazione, x = 1, come risultato del passaggio, y acquisirà anche il valore 1. Quindi il controllo torna all'inizio, e x ora sarà uguale a 2, rispettivamente, y diventerà 3.
Utilizzando costruzioni congiunte di loop e ramificazioni, è possibile creare semplici algoritmi per risolvere problemi di luce e acquisire conoscenza dei linguaggi di programmazione.
Il linguaggio algoritmico ha funzioni standard che sono già integrate in esso. Possono facilitare alcune operazioni di routine con numeri ed espressioni. Le funzioni standard di un linguaggio algoritmico possono essere calcolate radice quadrata logaritmi, moduli, seni, coseni, ecc:
Queste caratteristiche standard consentono di evitare la creazione di una "bicicletta", contribuendo a implementare le funzioni più semplici di mezzi regolari.
Espressioni booleane riflettere se una determinata operazione soddisfa una condizione. Ad esempio, x> 0 sarà true quando x è uguale a 1, 2, 25 o qualsiasi altro numero maggiore di zero. Il linguaggio algoritmico contiene espressioni logiche che, oltre alle operazioni matematiche standard, possono utilizzare le seguenti parole chiave e operatori:
Inoltre, ci sono operatori di confronto - <,>, =, che possono essere combinati per creare espressioni di tipo più o meno uguali.
Il prossimo è un piccolo codice di esempio. Il linguaggio algoritmico educativo consente di creare modelli approssimativi di sistemi software reali di grandi dimensioni che risolvono i compiti più complessi.
Per comprendere il processo, è possibile organizzare un programma che interagisce con l'utente. Lei chiederà un numero e l'auto lo squadrerà.
I componenti di un linguaggio algoritmico sono composti da molte parole chiave. La prima cosa che il programma inizia è l'annuncio dell'algoritmo - al.
al Square il numero ()
Tra parentesi è necessario specificare un argomento che sarà un valore dell'utente e del risultato. Inoltre, non dimenticare l'annuncio dei tipi di dati.
alg Squareing a number (arg cx, cz S)
Ora la macchina saprà che dovrà interagire con una variabile di tipo intero, e il risultato del suo lavoro sarà S.
Segue l'inizio del corpo dell'algoritmo, in cui è possibile definire i valori intermedi se necessario.
presto
La prima cosa da fare è eseguire l'immissione dei dati. Questo viene fatto usando la parola chiave "input".
input x
Ora, direttamente nel corpo dell'algoritmo, è necessario descrivere una serie di comandi con l'aiuto dei quali verranno calcolati i quadrati dei numeri.
S: = x * x
uscita "S =", S
Il linguaggio algoritmico, i cui comandi consentono di realizzare l'assegnazione, è scritto nella forma: =. Pertanto, la variabile S ottiene il valore del prodotto x su se stesso. Una linea con l'output mostra il risultato sullo schermo. Bene, tutto questo termina con la parola chiave "con". Il codice completo apparirà ora come segue:
alg Squareing a number (arg cx, cz S)
presto
input x
S: = x * x
uscita "S =", S
gioco
Questo è il modo semplice per implementare l'algoritmo per calcolare il quadrato del numero inserito. Il programma può essere complicato aggiungendo ad esso la somma di tutte le operazioni. E poi assomiglierà a questo:
al quadrare un numero e calcolare la loro somma (arg cx, cz S c)
dato | x> 0
bisogno di | S = 1 * 1 + 2 * 2 + ... + x * x
nach è intero
input x; S: = 0
nts per un da 1 a x
S: = S + a * a
KC
uscita "S =", S
gioco
In questa variante, viene utilizzato un ciclo, una variabile intermedia a e una breve istruzione all'attività nelle sezioni "data" e "necessaria". Ora, se trasferisci un certo numero al programma, lo squadrerà e produrrà la somma dei quadrati di tutti i numeri che lo precedono.
La lingua algoritmica è comune nell'ambiente di apprendimento per comprendere le norme di base e le regole di programmazione. Ad esempio, BASIC, che si svolgono in molte scuole. Riflette perfettamente tutti i paradigmi di un termine come un linguaggio di programmazione imperativo in cui tutti i comandi sono eseguiti sequenzialmente uno dopo l'altro.
A causa dell'approssimazione delle costruzioni e delle parole chiave descritte nella lingua umana, la scrittura del codice è diventata molto più semplice rispetto a modelli completamente dipendenti dalla macchina o dalla macchina. La famiglia dei linguaggi di programmazione Algol è andata più lontano nel suo sviluppo, dal momento che la sua sintassi è stata introdotta in diverse localizzazioni. Era possibile scrivere il codice anche in russo.
In generale, lo sviluppo di linguaggi algoritmici ha fortemente influenzato la programmazione nel suo complesso e ha permesso a un gran numero di persone di diventare sviluppatori. Gli strumenti moderni stanno diventando più accessibili e comprensibili. Lingue di programmazione di alto livello contengono sempre più funzioni con nomi e titoli parlanti. I limiti del loro uso stanno diventando meno. Quindi, in futuro, è possibile un'attuazione più comprensibile e naturale dello sviluppo.