Ciao a tutti!
Sono nuovo di java e della programmazione in generale, per cui mi scuso se la domanda è banale.
Il mio problema, come da titolo, è convertire i gradi celsius in frehneit o viceversa, a seconda dell' input dell' utente. Il programma infatti dovrebbe essere in grado di riconoscere l' unità di misura dell' imput, che deve essere inclusa dall' utente.
Per esempio, un imput corretto per i gradi celsius potrebbe essere: 10° C o 10* c, un imput corretto per i farenheit sarebbe: 20° F o 20° f.
Per risolvere il problema ho ideato questo codice:
import java.util.*;
class ConversioneGradi {
public static void main (String[] args) {
double gradi_Celsius, gradi_Farheneit;
string s1, s2, s3;
Scanner tastiera = new Scanner(System.in);
System.out.println("Inserisci la temperatura in gradi celsius o farheneit, specificando a quale scala appartiene la temperatura con una letta appropriata a seguito del numero: ");
s1 = tastiera.nextLine();
s2 = s1.toLowerCase();
int c = s2.indexOf(c);
int f = s2.indexOf(f);
if (c>=0) {
s3 = s2.substring(0,c);
gradi_Celsius = (double)s3;
gradi_Farheneit = (9(gradi_Celsius)/5)+32;
System.out.println(s1 + " " + "equivalgono a" + " " + gradi_Farheneit + " " + "F"); }
else if (f>=0) {
s3 = s2.substring(0,f);
gradi_Farheneit = (double)s3;
gradi_Celsius = 5(gradi_Farenheit-32)/9;
System.out.println(s1 + " " + "equivalgono a" + " " + gradi_Celsius + " " + "C"); }
}
}
Il problema è che al momento della compilazione, si rilevano alcuni errori, che secondo me non dovrebbero esserci.
Questi errori riguardano le parentesi attorno a gradi_Celsius e gradi_Farheneit, il compilatore si aspetta dei ';' al posto delle parentesi, oppure delle parentesi di verso opposto, oppure dice "not a statement".
Temo che il problema sia nel type cast che dovrebbe essere da string a double, ma non capisco come potrei fare il type cast altrimenti!
Grazie in anticipo per le risposte, ve ne sono davvero grato!