Задача: Даны натуральное число n, действительные числа [latex]a_{1},…,a_{n}[/latex], получить [latex]b_{1},…,b_{n}[/latex], где [latex]b_{i}= \frac{a_{i}}{1 + (a_{1} +… + a_{i})^{2}}[/latex], [latex]i = 1,…, n[/latex].
[latex]n[/latex] | [latex]a[/latex] | [latex]b[/latex] |
7 | 1 2 3 4 5 6 7 | 0.500 0.200 0.081 0.040 0.022 0.014 0.009 |
10 | 4.5 3.1 6.7 1.1 8.9 4.32 1.45 5.1 4.5 8.1 | 0.212 0.053 0.033 0.005 0.015 0.005 0.002 0.004 0.003 0.004 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
#include <iostream> using namespace std; int main() { double a, b, an = 0; int n; scanf("%d", &n); for (int i = 0; i < n; i++) { if (scanf("%lf", &a) == EOF) break; b = a / (1 + ((a + an) * (a + an)));//Вычисляем формулу printf("\n%3.2lf %3.3lf", a, b); an = a + an; // Запоминаем сумму } return 0; } |
Код программы на Java:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
import java.util.*; import java.lang.*; import java.io.*; class Ideone { public static void main (String[] args) throws java.lang.Exception { Scanner in = new Scanner(System.in); double a, b, an = 0; int n = in.nextInt(); for (int i = 0; i < n; i++) { a = in.nextDouble(); b = a / (1 + ((a + an) * (a + an)));//Вычисляем формулу System.out.format("\n %3.2f %3.3f", a, b); an = a + an; // Запоминаем сумму } } } |
Зачёл, но исправьте, пожалуйста, за ближайшие дни:
— в формуле из условия задачи пропущен квадрат,
— «запоминаем an для» — забыли про laTeX,
— введите метки.
Многоточия в latex кодируют так \cdots или \ldots.
Неужели Google.com не подсказал?