Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Implementare un convertitore da euro a dollari o viceversa.
- * Il tasso di cambio e la cifra da convertire sono dati inseriti
- * da tastiera
- *
- */
- import std;
- double leggi_numero(std::string messaggio)
- {
- double n{};
- std::print("{}", messaggio);
- std::cin >> n; //nessun controllo per brevitá
- return n;
- }
- auto main() -> int
- {
- double tasso_cambio{0.0}, cifra_da_convertire{0.0};
- char valuta_partenza{ 'E' }; //E per euro, D per dollari
- std::print("Valuta partenza (E per euro, D per dollari): ");
- std::cin >> valuta_partenza;
- if (std::string caratteri_validi = "EeDd"; caratteri_validi.find(valuta_partenza) == std::string::npos)
- {
- std::println("Valuta non valida. Accetto 'E' per euro o 'D' per dollari.");
- return 1;
- }
- else
- {
- valuta_partenza = std::toupper(valuta_partenza);
- }
- //if (valuta_partenza != 'E')
- //{
- // if (valuta_partenza != 'D')
- // {
- // std::println("Valuta non valida. Accetto 'E' per euro o 'D' per dollari.");
- // return 1;
- // }
- //}
- if (valuta_partenza == 'E')
- {
- tasso_cambio = leggi_numero("Inserisci il tasso di cambio da Euro a Dollaro -> ");
- }
- else
- {
- tasso_cambio = leggi_numero("Inserisci il tasso di cambio da Dollaro a Euro -> ");
- }
- //std::string messaggio = "Inserisci il tasso di cambio da ";
- //if (valuta_partenza == 'E')
- //{
- // messaggio = messaggio + " Euro a Dollaro -> ";
- //}
- //else
- //{
- // messaggio = messaggio + " Dollaro a Euro -> ";
- //}
- //tasso_cambio = leggi_numero(messaggio);
- //tasso_cambio = leggi_numero(std::string{ "Inserisci il tasso di cambio da " } +
- // (valuta_partenza == 'E' ? " Euro a Dollaro -> " : " Dollaro a Euro -> "));
- if (tasso_cambio <= 0)
- {
- std::println("Il tasso di cambio deve essere un numero positivo.");
- return 1;
- }
- if (valuta_partenza == 'E')
- {
- cifra_da_convertire = leggi_numero("Cifra in Euro da convertire in $: ");
- }
- else
- {
- cifra_da_convertire = leggi_numero("Cifra in $ da convertire in Euro: ");
- }
- if (cifra_da_convertire <= 0)
- {
- std::println("La cifra da convertire deve essere un numero positivo.");
- return 1;
- }
- if (valuta_partenza == 'E')
- {
- std::println("{} Euro corrispondono a {:.2f} Dollari", cifra_da_convertire,
- cifra_da_convertire * tasso_cambio);
- }
- else
- {
- std::println("{} Dollari corrispondono a {:.2f} Euro", cifra_da_convertire,
- cifra_da_convertire * tasso_cambio);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment