System.out.println("x = "+temp+", y = "+(temp)*(temp)*Math.sin(temp));
}
/*Завдання 2*/
for( double i = 60;i<=80;i+=2){
temp = i/10;
System.out.print("x = "+temp+", y = ");
if(i < 7){
System.out.println(Math.sqrt(2.0/(temp+1)));
}
else System.out.println(temp*Math.cos(temp));
}
}
}
Пояснення:
Оскільки через похибки у зберіганні чисел з плаваючою точкою та інкрементуванні десяткових дробів до цих чисел, ми можемо переробити наші умови у задачах до еквівалентних - спершу домноживши всі дані числа умов на 10, а потім поділити на 10 для корекції до початкових умов, тим самим обійшовши неточності у десятковому додаванні.
1 votes Thanks 1
yurabrodzinskyy
просто спершу там є декілька рядків коду портім пише /*Завдання 1*/ і далі код
lozromanik
В Java є штука - багаторядковий коментар, що починається з /* та закінчується */, все, що між цими символами знаходиться - ігнорується, тому не хвилюйтеся
Answers & Comments
Відповідь:
import java.lang.Math;
public class Main {
public static void main(String[] args) {
/*Завдання 1*/
double temp;
for(double i = -20;i<=20;i++){
temp = i/10;
System.out.println("x = "+temp+", y = "+(temp)*(temp)*Math.sin(temp));
}
/*Завдання 2*/
for( double i = 60;i<=80;i+=2){
temp = i/10;
System.out.print("x = "+temp+", y = ");
if(i < 7){
System.out.println(Math.sqrt(2.0/(temp+1)));
}
else System.out.println(temp*Math.cos(temp));
}
}
}
Пояснення:
Оскільки через похибки у зберіганні чисел з плаваючою точкою та інкрементуванні десяткових дробів до цих чисел, ми можемо переробити наші умови у задачах до еквівалентних - спершу домноживши всі дані числа умов на 10, а потім поділити на 10 для корекції до початкових умов, тим самим обійшовши неточності у десятковому додаванні.