A162

Задача:  Даны натуральные числа  [latex]i, n[/latex], действительные числа [latex] a_{1}, … ,a_{n} (i\leq n) [/latex]. Найти среднее арифметическое всех чисел  [latex]a_{1}, … ,a_{n}[/latex] кроме [latex] a_{i} [/latex].

Т.к в условии задачи указано, что [latex] (i\leq n) [/latex] , то сделаем проверку, также выберем для [latex] i, n [/latex] тип unsigned int, т.к они натуральные ( [latex] >0 [/latex] )

n i a[0] a[1] a[2] a[3] a[4] a_m
5 2 1 2 3 4 5 3
5 6 2 3 4 5 44

Решение:

Ссылка на ideone C++: http://ideone.com/URjsSJ

Ссылка на ideone Java: http://ideone.com/TLfjVZ

 

Сделаем цикл по [latex]j [/latex]. Если [latex]j\neq i [/latex], то суммируем [latex]a [/latex] в переменную [latex]s [/latex]

Калачьов Андрій Сергійович
Калачьов Андрій Сергійович

Latest posts by Калачьов Андрій Сергійович (see all)

4 thoughts on “A162

  1. — В начале текста «unsigned int» не нужно оформлять как математическую формулу. Если хочется выделить текст как код программы, то это делают при помощи тегов pre. И поставьте пробел между словами.
    — Это не «Поисковые задачи» а «Потоковая обработка». Как следствие никаких массивов использовать нельзя (да и не нужно). Зачем Вы запоминаете все числа если никогда больше ими не пользуетесь?

  2. Засчитана Java-версия (8 баллов из 10)!

    Вы даже исправили ошибку C++версии (забыли инициализировать сумму). Правда, все же немного придерусь: можно согласиться с наименованием переменных i, n , j — не то, чтобы это хороший стиль, но во многом это решено за Вас. Можно даже согласиться с названиями a и s, хотя наверное лучше что-то вроде ai и sum. Но расшифровать название a_m еще сложнее — лучше его сменить. Не совсем понятно, почему решили вывести ответ с 1 знаком после запятой (впрочем, это Ваш выбор).

    Поправите стиль именования переменных — поставлю максимальный балл.

Добавить комментарий