Задача: Даны действительные числа [latex]a, b, c[/latex]. Удвоить эти числа, если [latex] a \geq b \geq c[/latex], и заменить их абсолютными значениями, если это не так.
[latex]a[/latex] | [latex]b[/latex] | [latex]c[/latex] | [latex]a_1[/latex] | [latex]b_1[/latex] | [latex]c_1[/latex] | Комментарий |
26 | 16 | -2 | 52.00 | 32.00 | -4.00 | Пройден |
20 | 30 | 0 | 20.00 | 30.00 | 0 | Пройден |
-4 | -16 | -20 | -8.00 | -32.00 | -40.00 | Пройден |
2.75 | 3.56 | -1 | 2.75 | 3.56 | 1 | Пройден |
2 | 2 | 2 | 4.00 | 4.00 | 4.00 | Пройден |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
#include <iostream> #include <stdio.h> #include<math.h> using namespace std; int main() { double a, b, c; cin >> a; cin >> b; //Вводим нужные нам действительные числа. cin >> c; if((a >= b) && (b >= c)) //Если a >= b >= c, то удваиваем их. { a*=2; b*=2; c*=2; } else // Во всех иных случаях находим абсолютное значение данных чисел. { a = fabs(a); b = fabs(b); c = fabs(c); } printf("a = %3.2f, b = %3.2f, c = %3.2f", a, b, c); return 0; } |
Код Java
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
import java.util.*; import java.lang.*; import java.io.*; class Depo { public static void main (String[] args) throws java.lang.Exception { double a, b, c; Scanner in = new Scanner(System.in); a=in.nextDouble(); b=in.nextDouble(); c=in.nextDouble(); if((a>=b)&&(b>=c)){ a*=2; b*=2; c*=2; } else{ a=Math.abs(a); b=Math.abs(b); c=Math.abs(c); } System.out.printf("a = %3.2f, b = %3.2f, c = %3.2f", a, b, c); } } |
Зачтено, но:
1. Вывод результатов нужно вынести за пределы условного оператора в самый конец (сейчас это 25-я строка). Это нужно сделать поскольку результаты выводятся независимо от способа их получения.
2. Вставьте, пожалуйста, в конце отчёта ссылку на этот код в IDEone.
Если не исправить в ближайшее время, я несколько снижу оценку.
Код отредактирован. Ссылка предоставлена.