String format = "Курс евро к доллару: " + eurToUsd;
String rate = amount + " евро - это " + result + " долларов.";
Я исправил слово curse, которое означает "проклятие" :) System.out.printf("%d евро - это %.2f долларов.%n", amount, result);
Здесь форматная строка идет первым аргументом, и в ней помечены места для вставки последующих аргументов. Значение amount попадет на место %d (от слова decimal - целое десятичное число). Значение result попадет на место %.2f (от слова float или fractional - дробное число; .2 - два знака в дробной части). float usdToRub = 113.78f;
float eurToRub = 125.31f;
int amount = 75;
float eurToUsd = eurToRub / usdToRub;
float result = amount * eurToUsd;
String format = "Курс евро к доллару: " + eurToUsd;
String rate = amount + " евро - это " + result + " долларов."; //System.out.printf("Курс евро к доллару: %.2f", eurToUsd);
System.out.printf("Курс евро к доллару: %.2f", eurToUsd);
System.out.printf(" %d евро - это %.2f долларов.%n", amount, result);
а как сделать что бы ответ в две стоки и более шел, а то в одну строку криво выглядит import java.text.NumberFormat;
import java.util.Currency;
import java.util.Locale;
public class CurrencyConverter {
public static void main(String[] args) {
// Получаем курсы валют
double eurRate = Currency.getInstance("EUR").getCurrencyConversionRate();
double usdRate = Currency.getInstance("USD").getCurrencyConversionRate();
// Конвертируем валюту
double eurAmount = 50;
double usdAmount = eurAmount * eurRate / usdRate;
// Создаем экземпляры класса NumberFormat для форматирования значений
NumberFormat currencyFormat = NumberFormat.getCurrencyInstance(Locale.US);
NumberFormat percentFormat = NumberFormat.getPercentInstance(Locale.US);
// Выводим результат в заданном формате, используя метод printf()
System.out.printf("Курс Евро к Доллару: %s\n", percentFormat.format(eurRate));
System.out.printf("%s Евро это %s Долларов.\n", currencyFormat.format(eurAmount), currencyFormat.format(usdAmount));
// Используем экземпляры класса NumberFormat повторно для других значений
double gbpRate = Currency.getInstance("GBP").getCurrencyConversionRate();
double gbpAmount = eurAmount * eurRate / gbpRate;
System.out.printf("%s Евро это %s Британских фунтов.\n", currencyFormat.format(eurAmount), currencyFormat.format(gbpAmount));
}
}
Только 2ой день учу Java, тут попалась мне задачка:
Создайте код с конвертацией валют, добавив форматируемую строку так, чтобы результат конвертации выводился в формате:
Курс Евро к Доллару: X.XX.
XX Евро это XX.XX Долларов.
Решил я ее таким способом, хотел бы спросить как можно это сделать красивее, понятнее и практичнее
А я хотел бы уже сам разобраться почему вы так написали код