МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах
РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ" ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах Гендерна антидискримінаційна експертиза може зробити нас моральними рабами ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів Контакти
Тлумачний словник |
|
||
Main( ){ const int n = 5; float mas[n], s = 0; int kol = 0; for( int i = 0; i < n; i++) { cout << "Введіть" << і << "елемент mas" << endl; cin >> mas[ i ]; if ( mas[ i ] > 0 ) { s += mas[ i ]; kol ++; } } s/ = kol; cout << "s=" << s << endl; return 0; } Використовуючи ім'я масиву як покажчик на початок масиву (перший елемент), цю програму можна переписати в такий спосіб:
// P2_8.CPP — обчислення середнього значення // додатних елементів масиву //використання імені масиву як покажчика на його початок #include < iostream> using namespace std; Main ( ) { const int n = 5; float mas[n], s = 0; int kol = 0; for ( int i=0; i < n; i++) { cout << "Введіть" << і << "елемент mas" << endl; cin >> *( mas+i); if(* ( mas+i ) > 0 ) { s+= *(mas+i); kol++; } } s/=kol; cout << "s=" << s << endl; return 0; } Якщо описати покажчик, зв'язати його з масивом (адресувати на початок масиву),то використовуючи арифметику покажчиків, можна написати цю програму у вигляді: // P2_9. CPP —— обчислення середнього значення // додатних елементів масиву // використання арифметики покажчиків #include < iostream> using namespace std; Main ( ) { int kol = 0; const int n = 5; float mas[n], s = 0; float *pm = mas; //припустимийзапис pm=&mas[0] for ( int і = 0; і < n; і++) { cout <<"Введіть"<< і <<"елемент mas" << endl; cin >> *pm++; cout << mas[i] << endl; if (mas[i] > 0) { s+=mas[i]; kol++; } } s/= kol; cout << "s=" << s << endl; return 0; }
У наведеній програмі при введенні масиву використовувався покажчик *pm , а при роботі з ним —ім'я масиву з індексом. Якби при роботі з масивом використовувався покажчик *pm ,то результат був би не вірним. Це пояснюється тим, що покажчик *pmв операціях введення він збільшує свою адресу( pm++) після введення чергового елемента масиву і надалі вказує ще не введений елемент. Наведемо ще один варіант програмної реалізації цієї ж задачі. // P2_10.СРР —— обчислення середнього значення // додатних елементів масиву // використання покажчиків #include < iostream> using namespace std; Main ( ) { const int n = 5; float mas[n], s = 0; float *pm = mas; // *pm=&mas[0] int kol = 0; for ( int i = 0 ; i < n ; i++) { cin >> *pm; cout << "Введіть" << і << "елемент mas" << endl; if (*pm > 0) { s += *pm; kol ++; } pm ++; } s/= kol; cout << "s=" << s << endl; return 0; }
Приклад 2.5. Скласти програму сортування одновимірного масиву за зменшенням методом вставки. // P2_11.CPP — сортування методом вставки (за зменшенням) //застосування покажчиків #include < iostream.h > #include < conio.h > Переглядів: 280 |
Не знайшли потрібну інформацію? Скористайтесь пошуком google: |
© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове. |
|