Предмет: Другие предметы, автор: nrkkfgh

как решить эту задачу на c++?срочно надо

Приложения:

Ответы

Автор ответа: igorShap
1

#include <iostream>


using namespace std;


int main() {

       short n;

       short * a;


       cin >> n;

       if (n < 0)

               return 1;

       else  

               a = new short[n];


       for (short i = 0; i < n; i++)

               cin >> a[i];  

       for (short i = 0; i < n; i += 3)

               cout << max(max(a[i], a[i+1]), a[i+2]) << " ";


       cout << endl;


       for (short i = 0; i < n; i++)

               cout << a[i] << " ";


       delete[] a;

       return 0;

}


DigitalAnnihilator: 8. Указатель является частью типа данных, а не отдельным её слагаемым.
DigitalAnnihilator: Причина:
Читабельность кода снижается при наличии неоднозначных для восприятия конструкций.

Пример:
Если имеется указатель типа integer. То его запись должна выглядеть следующе:
int*
Но никак не:
int *
Ведь '*' - не является обособленным типом как к примеру unsigned.
DigitalAnnihilator: ===========================================================
DigitalAnnihilator: 9. Если в сравнении используется две переменные, одна из которых константа, последняя должна быть всегда слева.
DigitalAnnihilator: Причина:
В силу человеческого фактора, при написании оператора == либо других операторов сравнения с символом '=' в синтаксисе, возможен единичный ввод последнего.
То есть может получиться следующая конструкция, на которую большинство компиляторов без специально указанного флага не отреагируют отрицательно:
if (variable1 = variable2)
Во избежание данного случая, следует писать константу слева, что даст возможность отловить ошибку на этапе компиляции:
if (constant = variable)
DigitalAnnihilator: Исключения:
Если обе переменные являются не константными.
DigitalAnnihilator: ===========================================================
DigitalAnnihilator: Мне кажется этого достаточно, что бы:
1. Не использовать это решение
2. Исправить или удалить это решение (:

Пишите только качественный код!
С Ув.
igorShap: Отвечал по поводу всех вышеприведенных пунктов, кроме 2 и 9. По поводу 2 - вполне возможно. По поводу 9 - ошибки нет, приведенное Вами высказывание лишь рекомендация, и на компиляцию и работу программы не влияет никак(если нет ошибки в написании условия).
DigitalAnnihilator: Зачем переписывать мое пояснение из 9 пункта?) Я по моему и так все разжевал.

P.S.
Пишу не для вас, а для тех кто увидет это решение, что бы не воспользовались вашим с такими помарками и ошибками. Так что то что вы отвечали на это мне в других вопросах тут вам не в плюс - значит код все так же плох.
Похожие вопросы
Предмет: Другие предметы, автор: Аноним