Что такое findslide.org?

FindSlide.org - это сайт презентаций, докладов, шаблонов в формате PowerPoint.


Для правообладателей

Обратная связь

Email: Нажмите что бы посмотреть 

Яндекс.Метрика

Презентация на тему Додаткові способи введення та виведення даних. (Лекція 10)

Содержание

Під час роботи з масивами доводить вводити досить багато вхідної інформації. Особливо ця проблема виникає під час багатократного виконання однієї і тієї самої програми.Саме тому необхідні інші способи введення вхідних даних.
Додаткові способи введення та виведення данихЛекція №10 Під час роботи з масивами доводить вводити досить багато вхідної інформації. Особливо Константне задання елементів масивуЗначення вхідного масиву можна задавати у константному вигляді:const [к-ть Приклад 1.#include #include main(){ const int a[10]={1,2,3,4,5,6,7,8,9,10};// const a[10]={1,2,3,4,5,6,7,8,9,10}; int i; for (i=0;i Приклад 2.#include #include  main(){ const a[2][5]={{1,2,3,4,5}, Приклад 3.#include #include  main(){ // const a[5][2]={{1,2},{3,4},{5,11},{12,13},{14,15}}; //  const int Приклад 4.#include #include main(){ const a[5][2]={{1,2,3,4,5}, Ініціалізація масивів Надання значень елементам масиву одночасно їх описом: []…[]={зн.1,зн.2,..};Особливості використання константного Приклад 1.{Int i,j, a[2][5]={{1,2,3,4,5}, Генератор випадкових чиселЩоб в С згенерувати випадкове число, необхідно скористатися функцією rand() Ряд випадкових чисел є незмінним для будь-якого запуску програми (41 18467 6334 Приклад 2.#include #include #include main(){ int a[10],i; srand(time(NULL));   for (i=0;i Однак, не завжди необхідні числа з такого великого діапазона. Щоб отримати ціле Приклад 3.#include #include #include main(){ int i,b=-5,c=10; float a[10]; srand(time(NULL));   for (i=0;i Основи роботи з файламиНайоптимальнішим способом збереження вхідних і вихідних даних є файли. Розглянемо текстові файли, що містять вхідну інформацію.За замовчуванням інформація вводиться з клавіатури Розглянемо ще один тип змінних file.Ім’я змінної цього типу вказує на те, Для того, щоб “зв’язати” логічне ім’я зі справжнім файлом на диску, відкривши На завершення роботи з файлом необхідно його закрити, використавши функцію fclose();Наприклад:fclose(f_in);Після успішного Для читання інформації з текстового файлу використовується функція:fscanf (,,);Наприклад:fscanf (f_in,”%d”,&n);Для запису інформації Приклад 1. #include #include int main(int argc, char *argv[]){  FILE *f_in; Вхідні та вихідні файли повинні знаходотись у тій самій теці, що й
Слайды презентации

Слайд 2 Під час роботи з масивами доводить вводити досить

Під час роботи з масивами доводить вводити досить багато вхідної інформації.

багато вхідної інформації. Особливо ця проблема виникає під час

багатократного виконання однієї і тієї самої програми.

Саме тому необхідні інші способи введення вхідних даних.

Слайд 3 Константне задання елементів масиву
Значення вхідного масиву можна задавати

Константне задання елементів масивуЗначення вхідного масиву можна задавати у константному вигляді:const

у константному вигляді:

const [к-ть ел-в]…[к-ть ел-в]={};

Особливості використання

константного задання елементів масиву:
його значення неможливо змінити!

Слайд 4 Приклад 1.
#include
#include

main()
{
const int a[10]={1,2,3,4,5,6,7,8,9,10};
//

Приклад 1.#include #include main(){ const int a[10]={1,2,3,4,5,6,7,8,9,10};// const a[10]={1,2,3,4,5,6,7,8,9,10}; int i; for (i=0;i

const a[10]={1,2,3,4,5,6,7,8,9,10};
int i;
for (i=0;i

",i,a[i]);
printf("\n");
}
system("PAUSE");
return 0;
}

Результат виконання:
a[0]=1; a[1]=2; a[2]=3; a[3]=4; a[4]=5; a[5]=6; a[6]=7; a[7]=8; a[8]=9; a[9]=10;

Слайд 5 Приклад 2.

#include
#include

main()
{
const a[2][5]={{1,2,3,4,5},

Приклад 2.#include #include main(){ const a[2][5]={{1,2,3,4,5},

{11,12,13,14,15}};
// const int a[2][5]={1,2,3,4,5,
11,12,13,14,15};
int i,j;
for (i=0;i<2;i++)
{
for(j=0;j<5;j++) printf("a[%d,%d]=%d; ",i,j,a[i][j]);
printf("\n");
}
system("PAUSE");
return 0;
}

Результат виконання:
a[0][0]=1; a[0][1]=2; a[0][2]=3; a[0][3]=4; a[0][4]=5;
a[1][0]=11; a[1][1]=12; a[1][2]=13; a[1][3]=14; a[1][4]=15;

Слайд 6 Приклад 3.

#include
#include

main()
{
// const a[5][2]={{1,2},{3,4},{5,11},{12,13},{14,15}};

Приклад 3.#include #include main(){ // const a[5][2]={{1,2},{3,4},{5,11},{12,13},{14,15}}; // const int a[2][5]={1,2,3,4,5,


// const int a[2][5]={1,2,3,4,5,

11,12,13,14,15};
int i,j;
for (i=0;i<5;i++)
{
for(j=0;j<2;j++) printf("a[%d,%d]=%d; ",i,j,a[i][j]);
printf("\n");
}
system("PAUSE");
return 0;
}

Результат виконання:
a[0][0]=1; a[0][1]=2;
a[1][0]=3; a[1][1]=4;
a[2][0]=5; a[2][1]=11;
a[3][0]=12; a[3][1]=13;
a[4][0]=14; a[4][1]=15;

Слайд 7 Приклад 4.

#include
#include

main()
{
const a[5][2]={{1,2,3,4,5},

Приклад 4.#include #include main(){ const a[5][2]={{1,2,3,4,5},

{11,12,13,14,15}};
// const a[5][2]={1,2,3,4,5,
// 11,12,13,14,15};
int i,j;
for (i=0;i<10;i++)
{
for(j=0;j<2;j++) printf("a[%d,%d]=%d; ",i,j,a[i][j]);
printf("\n");
}
system("PAUSE");
return 0;
}
Результат виконання:
a[0][0]=1; a[0][1]=2;
a[1][0]=11; a[1][1]=12
a[2][0]=0; a[2][1]=0;
a[3][0]=0; a[3][1]=0;
a[4][0]=0; a[4][1]=0;


Слайд 8 Ініціалізація масивів
Надання значень елементам масиву одночасно їх

Ініціалізація масивів Надання значень елементам масиву одночасно їх описом: []…[]={зн.1,зн.2,..};Особливості використання

описом:

[]…[]={зн.1,зн.2,..};

Особливості використання константного задання

елементів масиву:
його значення можна змінювати!


Слайд 9 Приклад 1.

{
Int i,j, a[2][5]={{1,2,3,4,5},

Приклад 1.{Int i,j, a[2][5]={{1,2,3,4,5},       {11,12,13,14,15}}; for (i=0;i

{11,12,13,14,15}};


for (i=0;i<2;i++)
{
for(j=0;j<5;j++) printf("a[%d,%d]=%d; ",i,j,a[i][j]);
printf("\n");
}
a[0][0]=100;
printf("%d\n",a[0][0]);
system("PAUSE");
return 0;
}

Результат виконання:
a[0][0]=1; a[0][1]=2;
a[1][0]=3; a[1][1]=4;
a[2][0]=5; a[2][1]=11;
a[3][0]=12; a[3][1]=13;
a[4][0]=14; a[4][1]=15;
100


Слайд 10 Генератор випадкових чисел
Щоб в С згенерувати випадкове число,

Генератор випадкових чиселЩоб в С згенерувати випадкове число, необхідно скористатися функцією

необхідно скористатися функцією rand() бібліотеки stdlib.h. Ця функція генерує

натуральні випадкові числа.

Приклад 1.

#include
#include
#include

main()
{
int a[10],i;
for (i=0;i<10;i++)
{
a[i]=rand(); printf("%d ",a[i]);
}
printf("\n");
system("PAUSE");
return 0;
}

Результат виконання:
41 18467 6334 26500 19169 15724 11478 29358 26962 24464

Слайд 11 Ряд випадкових чисел є незмінним для будь-якого запуску

Ряд випадкових чисел є незмінним для будь-якого запуску програми (41 18467

програми (41 18467 6334 26500 19169 15724 11478 29358

26962 24464…).
Проблема полягає у тому, що використовується одна й таж початкова точка входу для отримання псевдовипадкового числа.
Щоб уникнути цього, необхідно скористатися функцією srand (m). Саме вона встановлює початкову точку для отримання випадкового числа.
Однак, наприклад, srand (10) даватиме так само одне й те ж випадкове число 71.
Для того, щоб початкова точка також була випадковою, можна скористатися функцією time () з бібліотеки time.h. Тепер можна генерувати випадкові числа в постійно змінним потоці системного часу з почтаковою точкою 1 січня 1970 року. У якості параметра функції time () необхідно використати NULL:

    srand (time (NULL));    

Під час генерування псевдовипадкових чисел отримуються цілі числа в діапазоні від от 0 до 32767.


Слайд 12 Приклад 2.
#include
#include
#include

main()
{
int a[10],i;

Приклад 2.#include #include #include main(){ int a[10],i; srand(time(NULL));  for (i=0;i

srand(time(NULL));
for (i=0;i

a[i]=rand(); printf("%d ",a[i]);
}
printf("\n");
system("PAUSE");
return 0;
}

Результат виконання:
26169 21822 14724 23328 9136 14274 4216 27911 29433 24372
26472 5616 4924 225 18120 19012 31530 17818 24915 9657

Слайд 13 Однак, не завжди необхідні числа з такого великого

Однак, не завжди необхідні числа з такого великого діапазона. Щоб отримати

діапазона. Щоб отримати ціле число з діапазона [0, b),

необхідно застосувати ділення націло:
   int k = rand ()%b;

Щоб отримати числа з діапазона [a,b), неохідно скористатися формулою:

k= rand () %b + a;

Щоб отримати випадкові дійсні числа з діапазона [a,b], необхідо використати формулу в такому вигляді:

float k= (float )rand () * (b-a)/RAND_MAX +a;  
де RAND_MAX– це межа діапазона в 32767.


Слайд 14 Приклад 3.

#include
#include
#include

main()
{
int i,b=-5,c=10;

Приклад 3.#include #include #include main(){ int i,b=-5,c=10; float a[10]; srand(time(NULL));  for (i=0;i

float a[10];
srand(time(NULL));
for (i=0;i

a[i]=(float)rand()*(c-b)/RAND_MAX +b;
printf("%.2f ",a[i]);
}
printf("\n");
system("PAUSE");
return 0;
}
Результат виконання:
-4.95 0.90 8.00 -0.83 6.59 9.02 2.68 -3.60 1.11 7.01
a[i]=rand()*(c-b)/RAND_MAX +b; :
-5.00 9.00 3.00 9.00 0.00 5.00 3.00 8.00 9.00 -5.00


Слайд 15 Основи роботи з файлами
Найоптимальнішим способом збереження вхідних і

Основи роботи з файламиНайоптимальнішим способом збереження вхідних і вихідних даних є

вихідних даних є файли. В термінології ОС – це

об’єм однотипної інформації, розміщеної в певному місці дискового простору.
Файли мають свої параметри:
- ім’я та розширення;
- шлях до місця розташування.

Слайд 16 Розглянемо текстові файли, що містять вхідну інформацію.
За замовчуванням

Розглянемо текстові файли, що містять вхідну інформацію.За замовчуванням інформація вводиться з

інформація вводиться з клавіатури та виводиться на екран монітора.
Для

того, щоб змінити напрям потоку вхідної та вихідної інформації – читання з вхідного файлу та виведення у вихідний файл, необхідно “повідомити” про це програмі.

Слайд 17 Розглянемо ще один тип змінних file.
Ім’я змінної цього

Розглянемо ще один тип змінних file.Ім’я змінної цього типу вказує на

типу вказує на те, що при його вказанні буде

здійснюватись звернення до вмісту цього файлу.
Загальний вигляд опису:
file *<логічне ім’я файлу>;

Наприклад:
file *f_in,f_out;


Слайд 18 Для того, щоб “зв’язати” логічне ім’я зі справжнім

Для того, щоб “зв’язати” логічне ім’я зі справжнім файлом на диску,

файлом на диску, відкривши доступ до нього, використовується функція


fopen(“<ім’я файла на диску>”, ”<спосіб використання файла>”);

Наприклад:
f_in=fopen(“in.dat”,”r”);

Найуживаніші способи використання файлів:
r – відкрити існуючий файл для читання;
w - строворити новий файл для запису
(якщо файл с вказаним ім’ям існує, то ві буде переписаний);
r+ - відкрити існуючий файл для читання і запису;
w+ - строворити новий для читання і запису;
rt - відкрити існуючий текстовий файл для читання;
wt – створити новий текстовий файл для запису;
r+t - відкрити існуючий текстовий файл для читання і запису;
w+t - створити новий текстовий файл для читання і запису.

Слайд 19 На завершення роботи з файлом необхідно його закрити,

На завершення роботи з файлом необхідно його закрити, використавши функцію fclose();Наприклад:fclose(f_in);Після

використавши функцію fclose();

Наприклад:
fclose(f_in);

Після успішного завершення операції закриття вказаного файлу

функція fclose( ) повертає значення нуль. Будь-яке інше значення свідчить про помилкове завершення цієї операції.


Слайд 20 Для читання інформації з текстового файлу використовується функція:
fscanf

Для читання інформації з текстового файлу використовується функція:fscanf (,,);Наприклад:fscanf (f_in,”%d”,&n);Для запису

(,,);

Наприклад:
fscanf (f_in,”%d”,&n);



Для запису інформації у

текстовий файл використовується функція:
fprintf (<логічне ім’я файлу>,<формат виведення>,<список змінних>);

Наприклад:
fprintf (f_out,”%d”,a+b);

Слайд 21 Приклад 1.
#include
#include

int main(int argc, char

Приклад 1. #include #include int main(int argc, char *argv[]){ FILE *f_in;

*argv[])
{
FILE *f_in; //=fopen(“f_in.txt","r");
FILE

*f_out; //=fopen(“f_out.txt","w");
int n,i,a[100];
f_in=fopen(“f_in.txt","rt");
f_out=fopen(“f_out.txt","wt");
fscanf(f_in,"%d",&n);
for (i=0;i for (i=0;i fprintf(f_out,"\n");
fclose(f_out);
// system("PAUSE");
return 0;
}

  • Имя файла: dodatkovі-sposobi-vvedennya-ta-vivedennya-danih-lektsіya-10.pptx
  • Количество просмотров: 129
  • Количество скачиваний: 0