Форум программистов, компьютерный форум CyberForum.ru

Разделить все отрицательные элементы массива на его максимальный элемент - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Нужно перевести программу! Код Хэмминга. http://www.cyberforum.ru/cpp-beginners/thread53881.html
Код Хэмминга на Паскале, кто может переведите на С++? sent data bits: 1110011 1 1 1 1 0 0 1 1 1 1 0 checking error status : 0 received data bits: 11111011110 checking error status : 5 uses crt;
C++ То что в книгах не описано)) Чем отличаются в обычном C ANCI ++i от i++? http://www.cyberforum.ru/cpp-beginners/thread53874.html
Определить периметр правильного n-угольника, описанного около окружности радиуса r C++
Определить периметр правильного n-угольника, описанного около окружности радиуса r
getch(), char *name; C++
Привет всем, у меня опять вопрос, задается тип данных например char name; это понятно но для чего там ставится знак * char* name; И еще что значит функция getch() объясните пожалуйста по подробней....
C++ Помогите описать программу ежестрочно!!!!! http://www.cyberforum.ru/cpp-beginners/thread53853.html
Помогите описать программу ежестрочно!!!!!
C++ следующий шаг нужен совет заканчиваю изучать 1-ю книгу по С++ Дайтела Какие лучше книги дальше изучать, по: STL, MFC, OpenGL, Win 32 API, или что-то другое на Ваш взгляд - открыл руководство по STL, на первый взгляд не осилю; - MFC вроде нужно, хоть приложения можно реализовать; - с Win 32 API тоже на первый взгляд сложности; - интерес есть к OpenGL, хотя не знаю, хватит ли мне знаний; В общем... подробнее

Показать сообщение отдельно
Андрейка
419 / 223 / 27
Регистрация: 25.03.2009
Сообщений: 744
03.10.2009, 15:09     Разделить все отрицательные элементы массива на его максимальный элемент
Ну в общем видимо это не понятно sizeof(arr)/sizeof(*arr) . sizeof(arr) - высчитываем сколько наш массив занимает в байтах , вроде в винде int = 4 байта поэтому sizeof(arr) = 40; то есть 4*10 элементов , далее sizeof(*arr) эквивалентно sizeof(arr[0]) или sizeof(*(arr+0)) если не знаешь почему так почитай адресную арифметику а пока что считай что *(arr+i) = arr[i] , так далее sizeof(arr[0]) количество байт занимаемое нашим первым элементом а так как первый элемент имеет тип int отсюда получаем sizeof(arr[0]) = 4 делим 40 на 4 получаем 10 и того (for int i=0;i<10;i++) ну а так далее понятно ну и далее алгоритм max_element из STL в общем он ищет макс элемент в диапазоне (arr,arr+10) так как arr это указатель на первый элемент соотв arr+10 указатель на последний элемент ( опять же адресная арифмеика ) считай что наш алгоритм возвращает указатель на макс элемент а чтобы получить значение нужно как известно указатели разименовывать отсюда и *max_element.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru