6 / 8 / 8
Регистрация: 06.10.2017
Сообщений: 269
|
||||||
1 | ||||||
что скажите про данную прогу нормально написано?15.10.2017, 16:22. Показов 519. Ответов 11
Метки нет Все метки)
(
Дан ряд чисел x (x1,x2...,xn) выбрать из этой совокупности целые числа и для них подсчитать M по формуле M=sqrt(\sum_{k=1}^{n} x^2_k
завтра мне её сдавать,нужно что нибудь доработать посмотрите есть ли утечки памяти итд?
0
|
|
15.10.2017, 16:22 | |
Ответы с готовыми решениями:
11
Что скажите про данную сборку? Что скажите про леново Не работает мышь,в диспетчере устройств написано что работает нормально что скажите про GeForce 9600 GТ? |
1993 / 1109 / 697
Регистрация: 25.04.2016
Сообщений: 3,167
|
||||||
15.10.2017, 17:00 | 2 | |||||
float *x; //массив этих чисел
вы можете просто объявить массив нужного размера после того, как узнаете количестов чисел последовательности. Тогда отпадет необходимость в ручном распределении памяти:
Что еще можно изменить/улучшить? У вас несколько циклов использует одну и ту же переменную i, проще 1 раз объявить ее в начале программы, чем выделять под нее память при каждом вызове каждого нового цикла. В объявлении float sum2 = 0; лучше явно указать, что число с точкой: float sum2 = 0.0; В остальном никаких нареканий.
0
|
94 / 41 / 23
Регистрация: 18.09.2016
Сообщений: 379
|
|
15.10.2017, 17:15 | 3 |
stake-k26,
Может зациклиться, используйте while(getchar() != '\n'); для очистки потока.
0
|
1993 / 1109 / 697
Регистрация: 25.04.2016
Сообщений: 3,167
|
||||||
15.10.2017, 17:17 | 4 | |||||
В линуксе может, однако тут явно винда. К тому же зацикливание происходит потому, что в потоке ввода остается код клавиши Enter, так что проще после scanf пустой getchar() добавить.
т.е.
0
|
Модератор
![]() ![]() ![]() ![]() 12237 / 7404 / 1736
Регистрация: 25.07.2009
Сообщений: 13,585
|
|
15.10.2017, 17:24 | 5 |
С какого перепуга? Спецификатор "%d" пробельные символы пропускает.
Другое дело, вот этот фортель только компилятор, поддерживающий VLA, пропустит. Мелкостудия упрётся в то, что размер массива должен быть константой.
0
|
94 / 41 / 23
Регистрация: 18.09.2016
Сообщений: 379
|
|
15.10.2017, 17:31 | 6 |
easybudda, введите какую-нибудь строчную фигню, тогда посмотрим, что произойдёт.
Добавлено через 1 минуту Марина1211, лучше не сравнивайте вещественный числа на знак равенства. Лучше сравнивайте модуль разности вещественного(округлённого) и фактического с каким-то очень малым числом.
0
|
Модератор
![]() ![]() ![]() ![]() 12237 / 7404 / 1736
Регистрация: 25.07.2009
Сообщений: 13,585
|
||||||
15.10.2017, 17:36 | 7 | |||||
если речь о проверке ввода, то прежде всего нужно значение, возвращённое scanf, проверять.
0
|
94 / 41 / 23
Регистрация: 18.09.2016
Сообщений: 379
|
|||||||||||
15.10.2017, 17:45 | 8 | ||||||||||
Марина1211,
Проверять на равенство вещественные числа неправильно. Лучше сравнивайте их разницу с каким-то очень малым числом И добавьте проверки ввода на примере этой. Тогда будет сок
easybudda, проверка проверкой, но scanf продолжает читать поток все равно. Надо его очищать
0
|
Модератор
![]() ![]() ![]() ![]() 12237 / 7404 / 1736
Регистрация: 25.07.2009
Сообщений: 13,585
|
||||||
15.10.2017, 19:28 | 10 | |||||
Очищать надо, кто бы спорил, но и проверку надо правильно делать.
0
|
Модератор
![]() ![]() ![]() ![]() 12237 / 7404 / 1736
Регистрация: 25.07.2009
Сообщений: 13,585
|
|
15.10.2017, 21:34 | 12 |
Если есть варианты, что там во вводе может быть (строка, целое число, вещественное...), то да, однозначно. А когда просто числа одного типа из ввода читаются - лишние хлопоты по-моему...
Использовать, конечно, но здесь на форуме, где далеко не все подобные "тонкости" знают, лучше этот момент обозначать как-то, чтобы вопросов не возникало... И кстати, в С11 VLA - вещь не обязательная, могут поддерживаться, но есть варианты:
2
|
15.10.2017, 21:34 | |
15.10.2017, 21:34 | |
Помогаю со студенческими работами здесь
12
Ребят что скажите про этот ноутбук? Скажите все что думаете про данный ноутбук delphi(скажите пожалуйста про эти компоненты хоть что -нибудь)) Что можете сказать про данную модель ноутбука 17.3" Ноутбук DEXP Atlas H153? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |