- •“Київський політехнічний інститут” обчислювальна техніка та програмування - 1
- •Обчислювальна техніка та програмування - 1
- •Символи кодової таблиці ascii
- •Умовні переходи на мові "паскаль"
- •1: Begin
- •Цикли на мові "паскаль"
- •Підпрограми на мові "паскаль"
- •Function Alfha(a,b:real; c:byte):real;
- •Function Beta:integer;
- •Procedure Sorter (a,b:real; c:byte; Var X,y:real);
- •Procedure Beep;
- •Uses crt;
- •Window (x1,y1,x2,y2);
- •Window (10,5,45,15);
- •Window (1,1,80,25);
- •TextColor (yellow);
- •TextColor (14);
- •Текстові та типізовані файли мови "паскаль"
- •Assign (f1, ’Data.Pas’);
- •Reset (f2);
- •Rewrite (f2);
- •Seek (f2, 7);
- •FileSize (f2),
- •FilePos (f2).
- •Побудова графіків функцій на мові "паскаль"
- •MoveTo (200, 100);
- •SetLineStyle (0,0,1);
- •OutText (’Текст для виводу’);
- •OutTextXy (200,100,’Текст для виводу’);
- •SetTextStyle (0,0,0);
- •SetTextJustify (1,1);
- •PutPixel (150,50,green);
- •ClearDevice;
- •Бібліотечний модуль на мові "паскаль"
- •Interface
- •Implementation
- •Динамічні змінні мови "паскаль"
- •SetFillStyle (1, white);
- •Об’єктно-орієнтоване програмування на мові "паскаль"
- •New (Person, Init);
- •Destructor Done; Virtual;
- •Dispose (Person, Done);
- •Форматований ввід та вивід даних на мові “cі”
- •Printf(“керуючий рядок”,аргумент1,аргумент2, ...);
- •Scanf(“керуючий рядок”,аргумент1,аргумент2,...);
- •Scanf(“%d %f %c %s”,&I,&j,&k,l);
- •Scanf(“%d %*d %d”, &I,&j);
- •Scanf(“%d,%d”,&n,&m);
- •Оператори організації переходів на мові "сі"
- •1.2. Для організації умовного переходу по одному із багатьох варіантів доцільно використовувати оператор switch. Він має наступний формат:
- •Організація циклів на мові "сі"
- •Одновимірні та двовимірні масиви на мові "сі"
- •Char b[30];
- •Char a[10][20];
- •Записи, вкладені записи, масиви записів на мові "сі"
- •Int month;
- •Int year;};
- •Int class, age;};
- •Робота із бінарними та текстовими файлами
- •File *lst;
- •Int fflush (вказівник_на_файл);
- •Int fgetc(вказівник_на_файл);
- •Int fputc(вказівник_на_файл);
- •Int fread (вказівник_на_масив, розмір_об’єкта, кількість_об’єктів , вказівник_на_файл);
- •Int fwrite(вказівник_на_масив, розмір_об’єкта, кількіст_об’єктів , вказівник_на_файл);
- •Int fseek(вказівник_файла, зміщення, поч. Значення);
- •3. Контрольні запитання
- •Робота з функціями на мові “сі”
- •Тип_функції назва_функції(тип1 параметр1, ..., тип_n параметр_n);
- •Int main(int argc, char *argv)
- •3.1. Який синтаксис функцій у мові “сі”.
- •Комп’ютерний практикум № 17 графічний режим екрану на мові “ci”
- •Initgraph(int *driver, int *mode, char *path);
- •Void *pimage;
- •Void *malloc(об'єм_пам’яті_в_байтах);
- •Imagesize(x1,y1,x2,y2);
- •Putimage(x1, y1, вказівник, вид_вставки);
- •Вирішення диференційних рівнянь методом ейлера
- •Основи роботи в середовищі “turbo pascal 7.0” та “turbo c 3.0”
- •Комп’ютерний практикум № 17. Графічний режим екрану
Int main(int argc, char *argv)
У параметрі argc вказується кількість параметрів, *argv є вказівником на масив символьних рядків-аргументів програми. За згодою, параметр argv[0] містить ім’я програми, тому завжди argc>=1. Крім того, після вказівника на останній рядковий аргумент знаходиться порожній вказівник:
argv[argc]=NULL
При відлагодженні програми параметри командного рядка програми у середовищі TURBO C задаються у меню Run/Arguments… .
Приклад 5. Створити функцію, яка знаходить кількість пробілів у текстових файлах. Імена файлів задаються у командному рядку програми.
#include <stdio.h>
#include <conio.h>
int numspace(char *fname)
{
FILE *pfile;
int c,cnt=0;
pfile=fopen(fname,"r");
while((c=getc(pfile))!=EOF)
if(c==' ')cnt++;
close(pfile);
return cnt;
}
void main(int argc, char *argv[])
{
int i;
clrscr();
for(i=1;i<argc;i++)
{
printf("Number of spaces in file %s is %d\n\n",argv[i],numspace(argv[i]));
}
getch();
}
Приклад 6. Переробити попередню програму, розглядаючи argv як вказівник.
#include <stdio.h>
#include <conio.h>
int numspace(char *fname)
{
FILE *pfile;
int c,cnt=0;
pfile=fopen(fname,"r");
while((c=getc(pfile))!=EOF)
if(c==' ')cnt++;
close(pfile);
return cnt;
}
void main(int argc, char *argv[])
{
clrscr();
while(argc-->1)
{
argv++;
printf("Number of spaces in file %s is %d\n\n",*argv,numspace(*argv));
}
getch();
}
ЗАВДАННЯ НА РОБОТУ
Розробити та запустити у роботу програму на мові програмування “СІ”, яка вирішує задачу відповідно до заданого нижче варіанта.
2.1. Створити рекурсивну функцію для розрахунку n – го члена послідовності Фібоначчі F0=F1=0, Fn+2=Fn+1+Fn , n<=10. Результат зберегти у файл. Номер члена послідовності та ім’я файла задаються як аргументи командного рядка програми.
2.2. Створити функцію для розрахунку кількості дійсних коренів квадратного рівняння AX2+BX+C=0. Значення коефіцієнтів А, B, C задаються як аргументи командного рядка програми.
2.3. Створити програму на основі функції для знаходження максимального серед чисел, які знаходяться в текстовому файлі. Ім’я файла задається як аргумент командного рядка програми.
2.4. Створити функцію, яка підраховує кількість символів у текстовому файлі. Ім’я файла задається як аргумент командного рядка програми.
2.5. Створити функцію, що повертає кількість голосних букв у рядку. Рядок задається як аргумент командного рядка програми.
2.6. Створити функцію, яка вказує, чи проходить пряма AX+BY+C=0 через початок координат. Продемонструвати роботу функції. Значення коефіцієнтів А, B, C задаються як аргументи командного рядка програми.
2.7. Створити функцію для копіювання файла. Імена вихідного та результуючого файлів задаються як аргументи командного рядка програми.
2.8. Створити функцію, яка вказує, чи знаходиться деяка точка B з координатами (xb;yb) всередині прямокутника з вершинами A (xa;ya) та C(xc;yc). Координати точок задаються як аргументи командного рядка програми.
2.9. Створити функцію, яка вказує, чи знаходиться деяка точка D з координатами (xd;yd) всередині трикутника з вершинами A (xa;ya), B (xb;yb) та C(xc;yc). Координати точок задаються як аргументи командного рядка програми.
2.10. Створити функцію, яка вказує, чи паралельні дві прямі AX+BY+C=0 та A1X+B1Y+C1=0. Коефіцієнти прямих задаються як аргументи командного рядка програми. Результат записується на екран та у текстовий файл, ім’я якого також задається як аргумент командного рядка програми.
КОНТРОЛЬНІ ЗАПИТАННЯ