Мы поможем в написании ваших работ!
ЗНАЕТЕ ЛИ ВЫ?
|
Цілочисельний масив з 8 рядків та 15 стовпців заповнити випадковими одноцифровими числами. Скільки разів у масиві зустрічається число 5?
Похожие статьи вашей тематики
3. Доповнити програму-розв'язок попередньої задачі виведенням таблиці кількості входжень у масив кожного з чисел (наприклад: 0->5 raz, 1->8 raz, …)
4. Заданий одновимірний масив цілих чисел. Вивести значення елементів масиву:
A. У зворотному порядку
B. З парними індексами
C. З непарними індексами
D. Які є парними числами
E. Які є непарними числами
Література
1. Лєхан С.Ф. Інформатика С++. Спецкурс. 10-12 класи. – Шепетівка; Аспект, 2007.
2. Глинський Я.М., Анохін В.Є., Ряжська В.А. С++ і С++ Builder. Навчальний посібник. – Львів: СПД Глинський, 2006.
3. Глушаков С.В., Смирнов С.В., Коваль А.В. Практикум по С++. – Харьков: Фолио, 2006.
4. Павловская Т.А. С/С++. Программирование на языке высокого уровня. – СПб.: Питер, 2003
Лисенко Т.І. Поглиблене вивчення програмування в школі. – К.:ТОВ Редакція “Комп'ютер”, 2007.
Розв’язки завдань
Слайд № 13
Задача 2
#include <iostrem.h>
#include <conio.h>
#include <stdlib.h>
int main ()
{int a[8][15], int k=0;
randomize();
for (int I=0; I<8; I++)
for (int j=0; j<15; j++)
{a[I][j]=random(9);
if (a[I][j]==5) k++;}
cout<<k<<endl;
getch ();
return 0;
}
Задача 3
#include <iostrem.h>
#include <conio.h>
#include <stdlib.h>
int main ()
{int a[8][15], int k[10]={0};
randomize();
for (int I=0; I<8; I++)
for (int j=0; j<15; j++)
{a[I][j]=random(9);
k[a[i][j]]++;}
for (int i=0; i<10; i++) cout<<”k[“<<i<<”]=”<<k[i]<<” “;
cout<<endl;
getch ();
return 0;
}
Задача 4
#include <iostrem.h>
#include <conio.h>
#include <stdlib.h>
int main ()
{int a[100], int n; cin>>n;
randomize();
for (int I=0; I<n; I++)
a[I]=random(90);
//-----у зворотному порядку-------
for (I=n-1; I>=0; I--) cout<a[I]<<” “;
cout<<endl;
//-----у парними індексами-------
for (I=0; I<n; I+=2) cout<a[I]<<” “;
cout<<endl;
//-----у непарними індексами-------
for (I=1; I<n; I+=2) cout<a[I]<<” “;
cout<<endl;
//-----які є парними-------
for (I=0; I<n; I++)
if (a[I]%2==0) cout<a[I]<<” “;
cout<<endl;
//-----які є непарними-------
for (I=0; I<n; I++)
if (a[I]%2!=0) cout<a[I]<<” “;
cout<<endl;
getch ();
return 0;
}
Урок № 31
Тема: Підсумковий урок з теми “Масиви”.
Мета:
- Контроль отриманих знаннь та навичок
- Розвиток навичок раціонального використання часу
- Формування самостійності
Тип: Контроль отриманих знань та навичок
Обладнання:
- Тест “Масиви у С++”
- Картки “Масиви у С++”
Епіграф “Мы столько можем, сколько знаем” /Ф. Бекон/
Хід уроку
№
| Етап уроку
| Діяльність учителя
| Діяльність учнів
|
| Організаційний момент
| Оголосити тему. мотивація
Критерії оцінювання:
- Тестування - О1;
- Самостійна робота, кожна задача – 4 бал; - О2
- (О1+О2)/2
| Оформити аркуші
|
| Самостійна робота + тестування
| Спостереження, забезпечення самостійності виконання завдань
| По-черзі, тестування та самостійна робота (по варіантах)
|
| Домашнє завдання
| Розв’язати інший варіант
| Записати в зошит
|
Тематична атестація з теми «Масиви у С++»
Варіант 1
| Варіант 2
| № 1. Увести масив цілих чисел. Перший елемент поміняти місцями з максимальним
#include<iostream.h>
#include<conio.h>
Int MaxEl(int a[], int n) { int max=a[0]; int L=0; for (int i=1; i<n; i++) if (a[i]>=max) {max=a[i]; L=i;} return L; } //-----------------------------------------
void _Input(int*, int); void _Print(int*, int);
//--------------------------------------------
int main() { int n, *a; //розмір та масив cout<<“n=”; cin>>n; a=new int [n]; _Input(a, n); cout<<“mas:\n”; _Print(a, n);
int L=MaxEl(a, n)
int tenp=a[1]; a[1]=a[L]; a[L]=temp;
_Print(a, n);
delete []a;
getch ();
retutn 0;
}
//--------функції------------------------ void _Input(int*a, int n); { for(int i=0; i<n; i++) cin>>a[i]; } //--------------------------------------- void _Print(int*a, int n); { for(int i=0; i<n; i++) cout<<a[i]<<“ “; cout<<endl; } //--------------------------------------
| № 1 Увести масив цілих чисел. Останній елемент поміняти місцями з мінімальним #include<iostream.h>
#include<conio.h>
Int MinEl(int a[], int n) { int min=a[0]; int L=0; for (int i=1; i<n; i++) if (a[i]<=min) {min=a[i]; L=i;} return L; } //-----------------------------------------
void _Input(int*, int); void _Print(int*, int);
//--------------------------------------------
int main() { int n, *a; //розмір та масив cout<<“n=”; cin>>n; a=new int [n]; _Input(a, n); cout<<“mas:\n”; _Print(a, n);
int L=MinEl(a, n)
int tenp=a[n]; a[n]=a[L]; a[L]=temp;
_Print(a, n);
delete []a;
getch ();
retutn 0;
}
//--------функції------------------------ void _Input(int*a, int n); { for(int i=0; i<n; i++) cin>>a[i]; } //--------------------------------------- void _Print(int*a, int n); { for(int i=0; i<n; i++) cout<<a[i]<<“ “; cout<<endl; } //--------------------------------------
|
№ 2. У підрозділі Y є 15 співробітників, а в G – 20. протягом місяця вони відпрацювали певну кількість днів, яка задана як випадкове число зі значенням від 0 до 31. Скільки осіб у кожному підрозділі працювали більше 15 днів?
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
Int F(int a[], int n) { int K=0; for (int i=0; i<n; i++) if (a[i]>=15) K++ return K; } //-----------------------------------------
void _Input(int*, int); void _Print(int*, int);
//--------------------------------------------
int main() {randomize();
int *y; //розмір та масив y=new int [15]; _Input(y, 15); cout<<“mas:\n”; _Print(y, 15);
int L=F(y, 15)
cout<<”y=”<<L<<endl;
delete []y;
int *g; //розмір та масив g=new int [20]; _Input(g, 20); cout<<“mas:\n”; _Print(g, 20);
int L=F(g, 20)
cout<<”g=”<<L<<endl;
delete []g;
getch ();
retutn 0;
}
//--------функції------------------------ void _Input(int*a, int n); { for(int i=0; i<n; i++) a[i]=random(31); } //--------------------------------------- void _Print(int*a, int n); { for(int i=0; i<n; i++) cout<<a[i]<<“ “; cout<<endl; } //--------------------------------------
| № 2. У підрозділі Y є 15 співробітників, а в G – 20. протягом місяця вони відпрацювали певну кількість днів, яка задана як випадкове число зі значенням від 0 до 31. Скільки осіб у кожному підрозділі працювали менше, ніж 10 днів?
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
Int F(int a[], int n) { int K=0; for (int i=0; i<n; i++) if (a[i]<=10) K++ return K; } //-----------------------------------------
void _Input(int*, int); void _Print(int*, int);
//--------------------------------------------
int main() {randomize();
int *y; //розмір та масив y=new int [15]; _Input(y, 15); cout<<“mas:\n”; _Print(y, 15);
int L=F(y, 15)
cout<<”y=”<<L<<endl;
delete []y;
int *g; //розмір та масив g=new int [20]; _Input(g, 20); cout<<“mas:\n”; _Print(g, 20);
int L=F(g, 20)
cout<<”g=”<<L<<endl;
delete []g;
getch ();
retutn 0;
}
//--------функції------------------------ void _Input(int*a, int n); { for(int i=0; i<n; i++) a[i]=random(31); } //--------------------------------------- void _Print(int*a, int n); { for(int i=0; i<n; i++) cout<<a[i]<<“ “; cout<<endl;} //--------------------------
| № 3. Утворити двовимірний масив y[2][3]. Вивести його на екран у вигляді таблиці. Обчислити добуток його від’ємних елементів
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
int main() {randomize();
int y[2][3]; //розмір та масив for (int i=0; i<2; i++)
{
for (int j=0; j<3; j++)
{y[i][j]=random(100)-50;
cout<<y[i][j]<<” “;}
cout<<endl;
}
int p=1; for (int i=0; i<2; i++)
for (int j=0; j<3; j++)
if (y[i][j]<0) p*=y[i][j];
cout<<”p=”<<p<<endl;
getch ();
retutn 0;
}
| № 3. Утворити двовимірний масив y[3][2]. Вивести його на екран у вигляді таблиці. Обчислити суму його додатних елементів
#include<iostream.h>
#include<conio.h>
#include<stdlib.h>
int main() {randomize();
int y[3][2]; //розмір та масив for (int i=0; i<3; i++)
{
for (int j=0; j<2; j++)
{y[i][j]=random(100)-50;
cout<<y[i][j]<<” “;}
cout<<endl;
}
int s=0; for (int i=0; i<3; i++)
for (int j=0; j<2; j++)
if (y[i][j]<0) s+=y[i][j];
cout<<”s=”<<s<<endl;
getch ();
retutn 0;
|
ТЕСТ «МАСИВИ У С++»
- ОБЕРІТЬ СКЛАДОВІ ЧАСТИНИ ВИЗНАЧЕННЯ МАСИВУ:
- сукупність змінних одного типу
- змінні зберігаються в послідовно розташованих комірках оперативної пам'яті
- послідовність змінних, які мають однакове ім'я
- завдяки нумерації змінні розташовуються лише у рядок
- ВКАЖІТЬ, ЩО МОЖЕ БУТИ ІНДЕКСОМ ЕЛЕМЕНТУ МАСИВА
- Символ
- Ціле число
- Ціле додатне число
- Математичний вираз, результат обчислення якого є ціле додатне число
- ОБЕРІТЬ ВІРНІ ТВЕРДЖЕННЯ, ЩО МАЮТЬ ВІДНОШЕННЯ ДО ІМЕНІ МАСИВУ:
- Назва масиву – ключове слово array та будь-яка латинська літера
- Назва масиву є вказівником на його перший елемент
- Назва масиву є вказівником на його елемент з індексом [1]
- Ім’я масиву створюється за правилами створення ідентифікатора
- ОБЕРІТЬ ВІРНІ ТВЕРДЖЕННЯ, ЩО МАЮТЬ ВІДНОШЕННЯ ДО РОЗМІРУ МАСИВУ:
- Розміром може бути змінні цілого типу
- Розміром може бути змінні дійсного типу
- Розмір – це кількість елементів масиву
- Розмір – це індекс останнього елементу масиву
- ВКАЖІТЬ ОПИСИ МАСИВІВ, ЯКІ НЕ МОЖНА ВИКОРИСТОВУВАТИ НІ В ЯКОЇ ЧАСТИНІ ПРОГРАМИ
- int a[3];
- int a[‘f’];
- int a[]
- int a[3]={1}
- НЕХАЙ int а[5]={10, 11, 12, 13, 14} ЧОМУ ДОРІВНЮЄ ЗНАЧЕННЯ ЕЛЕМЕНТУ a[3]
- 3
- 12
- 13
- 14
- НЕХАЙ int а[5]={10, 11, 12, 13} ЧОМУ ДОРІВНЮЄ ЗНАЧЕННЯ ЕЛЕМЕНТУ a[4]
- 0
- 12
- 13
- Визначити неможливо
- НЕХАЙ float r[]={1.5, 3, 4.2}; ВКАЖІТЬ РОЗМІР МАСИВУ
- 3
- 4
- 4.2
- 5
- НЕХАЙ int а[5]; int і,j; float c; ВИБЕРІТЬ ПОМИЛКОВІ ЗВЕРНЕННЯ ДО ЕЛЕМЕНТІВ МАСИВУ
a. a[i+j]
b. a[i/j]
c. a[c]
d. a[‘I’]
- ОБЕРІТЬ ВІРНЕ ОФОРМЛЕННЕ ПЕРЕДАВАННЯ МАСИВУ В ФУНКЦІЮ
- void fun(int A[], int n);
- void fun(int A[void], int n);
- void fun(int A[n], int n);
- void fun(int A[100], int n);
- ВКАЖІТЬ, ЩО ПЕРЕДАЄТЬСЯ В ФУНКЦІЮ fun(a[2], 5);
- Масив, розмір якого 2 та значення його нового розміру
- Елементи масиву від 2 до 5 номерів
- 2-й елемент масиву та числове значення для змінної 5
- Масив, розмір якого 2 та числове значення для змінної 5
- ВКАЖІТЬ ПРАВИЛЬНО ОРГАНІЗОВАНИЙ ЦИКЛ ДЛЯ ОПРАЦЮВАННЯ ВСІХ ЕЛЕМЕНТІВ МАСИВУ, РОЗМІРНІСТЬ ЯКОГО n
- for (int i=1; i<=n; i++)
- for (int i=0; i<=n; i++)
- for (int i=1; i<n; i++)
- for (int i=0; i<n; i++)
- НАВЕДЕНИЙ ФРАГМЕНТ ПРОГРАМИ РОЗВ’ЯЗУЄ ЗАДАЧУ СТВОРЕННЯ МАСИВУ З ПЕРШИХ СТА ЦІЛИХ ЧИСЕЛ. ЯКІ КОМАНДИ ВІДПОВІДАЮТЬ КОМАНДІ, ЩО ВИДІЛЕНО?
int n[100]; for (int k=0; k<100; k++) n[k]=k+1; - *(n+k)=++k;
- *(n+k)= k++;
- n[k]=++k;
- n[k]=k++;
- НАВЕДЕНІ ФРАГМЕНТИ ПРОГРАМИ ПОВИННІ РОЗВ’ЯЗУЄ ЗАДАЧУ ВИВЕДЕННЯ НА ЕКРАН ЕЛЕМЕНТІВ МАСИВУ int n[100]; З ПАРНИМИ ІНДЕКСАМИ. ЯКІ КОМАНДИ ВІДПОВІДАЮТЬ УМОВІ ЗАДАЧІ?
- for (int k=0; k<100; k++) cout<<n[2*k];
- for (int k=0; k<100; k+=2) cout<<n[k];
- for (int k=0; k<50; k++) cout<<n[2*k];
- for (int k=0; k<100; k++) { k++; cout<<n[k];}
- НАВЕДЕНИЙ ФРАГМЕНТ ПРОГРАМИ РОЗВ’ЯЗУЄ ЗАДАЧУ ОБЧИСЛЕННЯ СУМИ ЕЛЕМЕНТІВ МАСИВУ. ЯКІ КОМАНДИ ВІДПОВІДАЮТЬ КОМАНДІ, ЩО ВИДІЛЕНО?
int n[100]; int S=0; for (int k=0; k<100; k++) S=S+n[k]; - for (int k=0; k<100; k++) S+=n[k];
- for (int k=0; k<100; k++, S=S+n[k]);
- for (int k=0; k<100; S=S+n[k], k++);
- for (int k=0; k<100;); S=S+n[k]; k++;
- ПРОАНАЛІЗУЙТЕ НАВЕДЕНИЙ ФРАГМЕНТ ПРОГРАМИ. ОБЕРІТЬ ВІРНЕ ТВЕРДЖЕННЯ, ЩО СТОСУЄТЬСЯ ДАНОГО ФРАГМЕНТУ.
int L=0; for (ini k=0; k<n; k++) if (a[k]<0) L++; - Знаходимо індекс першого від’ємного елементу
- Знаходимо індекс останнього від’ємного елементу
- Якщо від’ємного елементу немає, змінна L вкаже на перший елемент масиву
- Якщо від’ємного елементу немає, змінна L буде мати значення за межами індексів масиву
|