Scambio variabili in C++

Hai iniziato a programmare in C++, ma non sai come effettuare uno scambio tra variabili. Niente paura! Te lo spieghiamo noi.

Come scambiare due variabili

Anche se può sembrare semplice, alcuni programmatori alle prime armi trovano difficoltà nel creare questo tipo di scambio. Il mio consiglio è di provarlo a fare da solo senza copiare ed incollare ciò che scriverò di seguito.

Prima di tutto dobbiamo dare un nome alle nostre variabili. Per pura e piacevole comodità, le chiamerò x e y. Ad esse va aggiunta un altra variabile “temporale”, ovvero temp. Ci permetterà di dare in prestito un valore quando ne avremo bisogno. Inizializziamo quindi le tre:

	float x, y, temp;

Vi ricordo che mettendo float possiamo usare anche i numeri con la virgola, il che renderà tutto più semplice in fase di programmazione.

Dopo aver inizializzato le nostre variabili, dobbiamo assegnargli un valore. In questo esempio, sarà l’utente che utilizzerà il programma ad inserire dei valori. In un altro caso, potrebbe essere già il programma a darveli. Detto questo, diciamo all’utente di inserire un valore ad x e uno a y:

	cout<<"Inserisci x  ";
	cin>>x;
	cout<<"Inserisci y  ";
	cin>>y;

Ora che abbiamo il valore di x e il valore di y, non ci resta altro che svolgere il problema che ci siamo posti all’inizio. Ovvero scambiare le due variabili. Quindi x avrà il valore di y e y il valore di x.

In questo esempio il valore di x sarà 1 mentre quello di y sarà 2.

Le righe da scrivere sono 3. Per farvi capire meglio vi spiegherò tutto passaggio per passaggio. In questo momento x=1, y=2, temp=0.

temp=x;

Il primo passaggio da fare, come vedete qui sopra, è scrivere temp=x. In questo modo temp, che valeva zero, ora avrà un valore uguale a x, cioè 1. La nostra variabile temporanea d’appoggio farà nel programma il “lavoro sporco”.

Ora quindi x=1, y=2, temp=1.

x=y;

Nel secondo passaggio scriviamo che x è uguale a y. Quindi se prima x aveva un valore pari a 1, ora ha un valore di 2, cioè quello dell’altra variabile. Fatto questo, y rimarrà col valore da noi assegnato e non subirà cambiamenti.

Ora quindi x=2, y=2, temp=1:

y=temp;

Nel terzo ed ultimo passaggio del nostro problema, y sarà uguale a temp. Quindi se prima y aveva un valore pari a 2 ora avrà un valore uguale a 1, cioè quello della variabile d’appoggio. Così facendo y avrà il valore che precedentemente aveva x e viceversa.

Nel passaggio finale x=2, y=1, temp=1.

N.B.= La variabile temp nel passaggio finale rimarrà con il valore della prima variabile da noi assegnata. Questo non ci causa problemi in quanto temp nelle finalità di questo algoritmo è solo una variabile d’appoggio. Ha fatto il lavoro sporco, e già questo basta.

Bene, ora possiamo stampare sullo schermo le nostre variabili con i valori invertiti.

cout<<"Scambio effettuato!  ";
	cout<<"x = "<<x;
	cout<<"  y = "<<y;

In questo modo il programma darà in output i due valori da noi scambiati.

Di seguito, il programma completo:

#include <iostream>
using namespace std;
int main () {
	float x, y, temp;
	cout<<"inserisci x  ";
	cin>>x;
	cout<<"Inserisci y  ";
	cin>>y;
	temp=x;
	x=y;
	y=temp;
	
	cout<<"Scambio effettuato!  ";
	cout<<"x = "<<x;
	cout<<"  y = "<<y;
}

Spero che ora ti sia tutto chiaro, e che questo tipo di cose non ti facciano più paura. Per qualsiasi domanda scrivi un commento o contattaci a: programmazionepertutti@gmail.com @redazioneprogrammazionepertutti

While e Do While: cosa sono e come utilizzarli

Di Francesco Rosati e Francesco Tramis

Se stai leggendo questo articolo, è perchè probabilmente non sai cosa sono i cicli While e Do While. Nessun problema! Siamo qui per aiutarti. Ti spiegeremo brevemente come scriverli nella pratica (C++) e come disegnarli nella teoria.

La differenza dei due cicli sta nella posizione della condizione. Di seguito le spiegazioni:

Do While

Questo è un ciclo Postcondizionale. In esso la condizione è posta dopo le varie operazioni da noi effettuate. Nei cicli Do While l’esecuzione del blocco viene effettuata almeno una volta, cosa che non accade nel While.

While

Questo è un ciclo Precondizionale. Come si può vedere, a differenza del precedente ciclo, la condizione è posta prima delle operazioni. Questo, come detto in precedenza, fa si che l’esecuzione del blocco possa anche non essere eseguita nemmeno una volta. Ovviamente questo dipende dal caso.

While e Do While in C++

Ora che abbiamo analizzato il funzionamento e l’aspetto dei 2 cicli, andiamo a vedere come si inseriscono in un compilatore del linguaggio C++.

while(c++)

Questa è la rappresentazione di un ciclo precondizionale su un compilatore, come possiamo notare ci sono 2 parentesi graffe il quale scopo è rappresentare l’inizio e la fine del ciclo.

Do While(C++)

Questo invece è come si presenta un ciclo Do While, postcondizionale, all’interno dei vari compilatori e possiamo subito notare una differenza rispetto al ciclo While, ovvero il punto e virgola alla fine. Quest’ultimo viene inserito per rappresentare la fine del ciclo.

L’articolo è giunto al termine. Per qualsiasi domanda scriveteci qui sotto nei commenti. Risponderemo il prima possibile.

Cos’è il compilatore e un accenno a C++

Sai cos’è un compilatore? Ed un codice C? Se la risposta è no, sei nell’articolo giusto.

In questo articolo vi spiegheremo cos’è e a cosa serve un compilatore e cosa sono i linguaggi ad alto livello.

Funzione di un compilatore

Il compilatore è un programma per computer che trasforma un codice ad alto livello (C, C++, Python, Swift) in linguaggio macchina (codice binario formato da 0 e 1) quindi comprensibili dell’elaboratore

Quale compilatore usare?

Una cosa molto importante da fare prima di poter procedere nella programmazione, è la scelta del compilatore. Noi personalmente vi consigliamo Code::Blocks.

Come si scrive un codice in C++

Per scrivere un codice in un linguaggio di programmazione (nel nostro caso C++) abbiamo bisogno di un algoritmo disegnato su Diagramma a Blocchi (DaB) (per farli al computer noi consigliamo AlgoBuild o Flowgorithm). Dopo aver creato il nostro algoritmo graficamente, bisogna passare alla fase di “Codifica” dove determinate forme sul DaB si trasformano in stringe.

Come “codificare”

Iniziamo dalla prima istruzione che dovreste sapere cioè la dichiarazione di una variabile; questo è il codice per dichiarare una variabile

 int X;

Ma come si inserisce un numero da tastiera? Bisogna usare il comando cin. Questo comando che è appartenente alla libreria iostream e ci permette di far apprendere un numero da tastiera memorizzata in una varabile. Ecco un codice di esempio:

 cin>> X;

Ora che il tuo elaboratore ha appreso un numero dovrai fargli fare delle operazioni matematiche. Vediamo un esempio:

Di seguito riportiamo un codice per incrementare di 1 una variabile a scelta (in questo caso la variabile X)

X=X+1;

Dopo aver fatto l’addizione con la variabile vi potrebbe essere salita la voglia di “stamparlo” a schermo, cioè di farlo uscire in output. Ci viene in aiuto sempre un comando della libreria iostream, cioè il Cout  che permette di scrivere a schermo sia variabili che stringhe di testo. Facciamo dei rapidi esempi:

cout<<espressione1;
 cout<<espressione1<<espressione2;

Nell’ipotetico caso che tu debba vedere se una variabile è più grande di un’altra variabile ti servirà una condizione: l’if.

Si scrive così in C++:

if (condizione) {
  Espressionevera{
}
Else {
Espressionefalsa
}

In questo articolo ci siamo focalizzati sui compilatori e sul codice C++, facendo un piccolo formulario. Spero vi sia piaciuto, io vi aspetto al prossimo articolo, sempre qui su programmazionepertutti.code.blog

"Gli smanettoni erediteranno la terra" Karl Lehenbauer

Progetta un sito come questo con WordPress.com
Comincia ora