Банк рефератов содержит более 364 тысяч рефератов, курсовых и дипломных работ, шпаргалок и докладов по различным дисциплинам: истории, психологии, экономике, менеджменту, философии, праву, экологии. А также изложения, сочинения по литературе, отчеты по практике, топики по английскому.
Полнотекстовый поиск
Всего работ:
364139
Теги названий
Разделы
Авиация и космонавтика (304)
Административное право (123)
Арбитражный процесс (23)
Архитектура (113)
Астрология (4)
Астрономия (4814)
Банковское дело (5227)
Безопасность жизнедеятельности (2616)
Биографии (3423)
Биология (4214)
Биология и химия (1518)
Биржевое дело (68)
Ботаника и сельское хоз-во (2836)
Бухгалтерский учет и аудит (8269)
Валютные отношения (50)
Ветеринария (50)
Военная кафедра (762)
ГДЗ (2)
География (5275)
Геодезия (30)
Геология (1222)
Геополитика (43)
Государство и право (20403)
Гражданское право и процесс (465)
Делопроизводство (19)
Деньги и кредит (108)
ЕГЭ (173)
Естествознание (96)
Журналистика (899)
ЗНО (54)
Зоология (34)
Издательское дело и полиграфия (476)
Инвестиции (106)
Иностранный язык (62791)
Информатика (3562)
Информатика, программирование (6444)
Исторические личности (2165)
История (21319)
История техники (766)
Кибернетика (64)
Коммуникации и связь (3145)
Компьютерные науки (60)
Косметология (17)
Краеведение и этнография (588)
Краткое содержание произведений (1000)
Криминалистика (106)
Криминология (48)
Криптология (3)
Кулинария (1167)
Культура и искусство (8485)
Культурология (537)
Литература : зарубежная (2044)
Литература и русский язык (11657)
Логика (532)
Логистика (21)
Маркетинг (7985)
Математика (3721)
Медицина, здоровье (10549)
Медицинские науки (88)
Международное публичное право (58)
Международное частное право (36)
Международные отношения (2257)
Менеджмент (12491)
Металлургия (91)
Москвоведение (797)
Музыка (1338)
Муниципальное право (24)
Налоги, налогообложение (214)
Наука и техника (1141)
Начертательная геометрия (3)
Оккультизм и уфология (8)
Остальные рефераты (21692)
Педагогика (7850)
Политология (3801)
Право (682)
Право, юриспруденция (2881)
Предпринимательство (475)
Прикладные науки (1)
Промышленность, производство (7100)
Психология (8692)
психология, педагогика (4121)
Радиоэлектроника (443)
Реклама (952)
Религия и мифология (2967)
Риторика (23)
Сексология (748)
Социология (4876)
Статистика (95)
Страхование (107)
Строительные науки (7)
Строительство (2004)
Схемотехника (15)
Таможенная система (663)
Теория государства и права (240)
Теория организации (39)
Теплотехника (25)
Технология (624)
Товароведение (16)
Транспорт (2652)
Трудовое право (136)
Туризм (90)
Уголовное право и процесс (406)
Управление (95)
Управленческие науки (24)
Физика (3462)
Физкультура и спорт (4482)
Философия (7216)
Финансовые науки (4592)
Финансы (5386)
Фотография (3)
Химия (2244)
Хозяйственное право (23)
Цифровые устройства (29)
Экологическое право (35)
Экология (4517)
Экономика (20644)
Экономико-математическое моделирование (666)
Экономическая география (119)
Экономическая теория (2573)
Этика (889)
Юриспруденция (288)
Языковедение (148)
Языкознание, филология (1140)

Контрольная работа: Алгоритмічні мови програмування мова С

Название: Алгоритмічні мови програмування мова С
Раздел: Рефераты по информатике
Тип: контрольная работа Добавлен 15:21:35 12 декабря 2010 Похожие работы
Просмотров: 27 Комментариев: 23 Оценило: 2 человек Средний балл: 5 Оценка: неизвестно     Скачать

Міністерство освіти і науки України

Бердичівський політехнічний коледж

Контрольна робота

з предмету “Алгоритмічні мови програмування: мова С”

2010 рік.

Завдання до контрольної роботи №2.

Завдання №1. Скласти блок схему та програму обчислення значення функції y=f(x) у точціx0 з точністю. Вхідні дані x0 таaмістяться у самій програмі, точність вводиться з клавіатури.

№ варіанту F (x) X0 A
2 1.2876 0.00001

Завдання №2. Використовуючи схему Горнера обчислити два значення поліному. Скласти блок-схему та програму. У програмі передбачити можливість введення вхідних даних як з клавіатури, так і з файлу INPUT.TXT, що міститься в поточній директорії, та використання функцій або процедур користувача.

№ варіанту Поліном Значення x
2 x5 -2.22x4 +3.33x3 -4.44x2 +5.55x-6.66 x1 =0.111; x2 =-0.999

Завдання №3. Скласти блок-схему та програму табулювання функції на проміжку [a, b] з заданим кроком hз використанням циклу з після умовою. Програма, крім того, повинна побудувати графік функції на вказаному проміжку з побудовою всіх точок, обчислених при табулюванні.

№ варіанту Функція a b h
2 0 1 0.25

Завдання №4. Скласти блок-схему та програму розв’язання задачі, згідно свого варіанту. Програма повинна передбачити можливість введення вхідних даних як з клавіатури, так і з файлу ZAD4.DAT. Результати роботи повинні виводитись як на екран, так і у файл ZAD4.REZ.

Вхідні данні, розміщені у текстовому файлі, мають такий формат:

· спочатку в одному рядку через пропуск йдуть два числа M та N –розмірність матриці, якщо матриця прямокутна та одне число N – якщо матриця квадратна;

· далі у M (N для квадратної матриці) рядках через пропуск йдуть N- чисел – дані відповідних комірок матриці;

· якщо в умові є вказівки, то у вказаному форматі можуть бути зміни.

Вхідні дані повинні мати формат, передбачений умовою задачі.

№ варіанту Умова задачі
2 У квадратній матриці підрахувати кількість невід’ємних елементів під головною діагоналлю.

Завдання №1. Скласти блок схему та програму обчислення значення функції y=f(x) у точці x0 з точністю. Вхідні дані x0 таaмістяться у самій програмі, точність вводиться з клавіатури.

№ варіанту F (x) X0 A
2 1.2876 0.00001

Відповідь №1.

Текст програми .

/*Задача №1 програма вычисления значения функции*/

#include<conio.h> /*Для ввода символов с клавиатуры*/

#include<stdio.h>

#include <math.h> //Для ввода математических функций

const double PI=3.1415926; /*Вводконстанты*/

main() /*Начало программы*/

{

printf("\n**********Программа вычисления значения функции F(x)*********");

float x,a,y; /*Описание переменных*/

int epsilon;

x=1.2876; /*Описание переменных первого порядка*/

a=PI/3;

printf("\nСколько знаков после запятой вывести на экран ");

scanf("%d",&epsilon); /*Считать число знаков epsilon*/

y=(cos(x+3*a)/sin(x+3*a))/sqrt(1+(sin(x+1.5*PI)*sin(x+1.5*PI)));

printf("%.*f\n",epsilon,y);

printf("\n Нажмителюбуюклавишу");

getch();/*Считать символ с клавиатуры*/

return 0;

}

Результати виконання програми.

**********Программа вычисления значения функции F(x)*********

Сколько знаков после запятой вывести на экран 5

0.28028

Нажмите любую клавишу

Блок-схема№1 до завдання№1.



Завдання №2. Використовуючи схему Горнера обчислити два значення поліному. Скласти блок-схему та програму. У програмі передбачити можливість введення вхідних даних як з клавіатури, так і з файлу INPUT.TXT, що міститься в поточній директорії, та використання функцій або процедур користувача.

№ варіанту Поліном Значення x
2 x5 -2.22x4 +3.33x3 -4.44x2 +5.55x-6.66 x1 =0.111; x2 =-0.999

Відповідь №2

Текст програми.

/*Задание №2*/

/*Заголовочные файлы*/

#include <stdio.h> /*объявление библиотечных функций для ввода-вывода */

#include <conio.h> /*считывание символов с клавиатуры*/

float F (float x); /*объявление функции вычисления полинома*/

intmain(void)

{

float x1,x2,y1,y2; /*описание типов переменных*/

intn, v;

FILE *infile; /*показатель на структуру типа FILE*/

printf("\n\n***Программа вычисления значения функции полинома в заданной точке X***\n\n");

printf("Сколько знаков после запятой выводить на экран? ");

scanf("%d", &n); /*считывание с клавиатуры значения точности выведения результата*/

printf("\nВвести значение Х: \n 1) из файла; \n 2) с клавиатуры?\n");

scanf("%d", &v);

if (v == 1)

{

if ((infile = fopen("input.txt", "rt"))== NULL)

{ /*открытие файла input.txt для чтения*/

fprintf(stderr, "Нельзя открыть файл.\n");

return 1;

}

fscanf (infile, "%f %f", &x1, &x2);

} /*чтение значений х1 и х2 из файла input.txt*/

else

{

printf("Введите значение Х1\n"); /*чтение значений х1 и х2 с клавiатури*/

printf("\nX1=");

scanf("%f", &x1);

printf("Введите значение Х2\n");

printf("\nX2=");

scanf("%f", &x2);

};

y1 = F(x1); /*вызов функции F()*/

y2 = F(x2);

printf("\nЗначение полинома в точке X1=%1.3f равно: ", x1);

printf("%.*f\n", n, y1);

printf("\nЗначение полинома в точке X2=%1.3f равно: ", x2);

printf("%.*f\n", n, y2);

printf("\nНажмите любую клавишу...");

getch(); /*считывание символа с клавиатуры*/

fclose(infile); /*закрытие файла input.txt*/

return 0; /*завершение роботы программы*/

}

float F (float x) /*определение функции вычисления полинома*/

{

return ((((x-2.22)*x+3.33)*x-4.44)*x+5.55)*x-6.66;

}

Результати виконання програми

***Программа вычисления значения функции полинома в заданной точке X***

Сколько знаков после запятой выводить на экран? 6

Ввести значение Х:

1) из файла;

2) с клавиатуры?

Значение полинома в точке X1=0.111 равно: -6.094421

Значение полинома в точке X2=-0.999 равно: -23.161737

Нажмите любую клавишу.


Блок-схема№2 до завдання№2.


Завдання №3. Скласти блок-схему та програму табулювання функції на проміжку [a, b] з заданим кроком hз використанням циклу з після умовою. Програма, крім того, повинна побудувати графік функції на вказаному проміжку з побудовою всіх точок, обчислених при табулюванні.

№ варіанту Функція a b h
2 0 1 0.25

Відповідь №3

Текст програми.

#include <stdio.h> /*об'явлення бiблiотечних функцiй для вводу-виводу*/

#include <graphics.h> /*виводу графiки*/

#include <math.h> /*математичних обчислень*/

#include <conio.h> /*зчитування символiв з клавiатури*/

float F (float x); /*об'явлення функцii обчислення Y*/

int main() /*початок програми*/

{

float a,b,h,y,max,i; /*опис типiв змiнних*/

int g; /*помилка графiки*/

int g_driver, g_mode; /*графiчний драйвер та режим*/

int q, w,j; /*ширина та висота графiка*/

char m[5];

printf("Програма табулювання функцii Y на промiжку [a,b] з кроком h\n");

printf("\nВведiть значення початку промiжку табуляцii: а = ");

scanf("%f", &a);

printf("\nВведiть значення кiнця промiжку табуляцii: b = ");

scanf("%f", &b);

printf("\nВведiть значення кроку табуляцii: h = ");

scanf("%f", &h);

a=a+0.000000000000000001; /*вводимо значення вiдмiнне вiд нуля*/

i=a;

max=0;

do

{

y=F(i); /*табуляцiя Y*/

if (fabs(y)>max) max=fabs(y);

printf("\nx = %.3f\t y = %.3f", i, y); /*виведення значень У на екран*/

i=i+h;

}

while (i <= b);

printf("\n\nДлявиведенняграфiкафункцii натиснiтьбудь-якуклавiшу...");

getch();

detectgraph(&g_driver, &g_mode); /*визначенняграфiчногоадаптерутаграфiчногорежиму*/

initgraph(&g_driver, &g_mode, ""); /*iнiцiалiзацiяграфiчноi системи*/

if ((g = graphresult()) != grOk)

printf("\nПомилкаграфiки : %s\n", grapherrormsg(g)); /*видачаповiдомленнявразi помилкивiдкриттяфайлу */

cleardevice(); /* очисткаекрану */

q=getmaxx();

w=getmaxy(); /* визначення максимальних значень X та Y*/

setbkcolor(0); /*встановлення кольору фону - чорний*/

setcolor(15); /* встановлення поточного кольору малювання - бiлий*/

setlinestyle(0,0,2); /* встановлення стилю лiнiй: тип -суцiльна, товщина=2*/

line(0,w/2,q,w/2); /*побудова координатних вiсей*/

line(q,w/2,q-10,w/2-10);

line(q,w/2,q-10,w/2+10);

line(q/2,0,q/2,w);

line(q/2,0,q/2-10,10);

line(q/2,0,q/2+10,10);

i=a;

j=0;

settextstyle(2,0,0);

setusercharsize(1, 1, 3, 2);

do

{

y=F(i);

setcolor(15);

setlinestyle(1,0,3);

circle(j*q*h/(b-a),(w/2-y*w/(2*max)),2); /*виведенняточоктабуляцii*/

sprintf(m, "%.2f", i);

outtextxy(j*q*h/(b-a),w/2,m); /*значеннянавiсi Х*/

setcolor(15);

setlinestyle(0,0,2);

line(j*q*h/(b-a), w/2-3,j*q*h/(b-a), w/2+3); /*розмiткавiсi Х*/

j=j+1;

i=i+h;

}

while (i <= b);

for (i=a,j=0; i<=b;j++, i=i+(b-a)/q) /*виведенняусiхточокграфiкунапромiжку [a,b]*/

putpixel(j,(w/2-F(i)*w/(2*max)),14);

getch(); /*зчитування символу з клавiатури*/

closegraph(); /*закриття графiчноi системи*/

return 0; /*нормальне завершення роботи програми*/

}

float F (float x) /*обчислення значення заданоi функцii в точцi X*/

{

returnsin(x)/x;

}

Результати виконання програми

Програма табулювання функцii Y на промiжку [a,b] з кроком h

Введiть значення початку промiжку табуляцii: а = 0

Введiть значення кiнця промiжку табуляцii: b = 1

Введiть значення кроку табуляцii: h = 0.25

x = 0.000 y = 1.000

x = 0.250 y = 0.990

x = 0.500 y = 0.959

x = 0.750 y = 0.909

.Для виведення графіка функції натисніть будь-яку клавішу

Графік для завдання №3.

Блок-схема№3 до завдання№3.




Завдання №4. Скласти блок-схему та програму розв’язання задачі, згідно свого варіанту. Програма повинна передбачити можливість введення вхідних даних як з клавіатури, так і з файлу ZAD4.DAT. Результати роботи повинні виводитись як на екран, так і у файл ZAD4.REZ

Вхідні данні, розміщені у текстовому файлі, мають такий формат:

· спочатку в одному рядку через пропуск йдуть два числа M та N –розмірність матриці, якщо матриця прямокутна та одне число N – якщо матриця квадратна;

· далі у M (N для квадратної матриці) рядках через пропуск йдуть N- чисел – дані відповідних комірок матриці;

· якщо в умові є вказівки, то у вказаному форматі можуть бути зміни.

Вхідні дані повинні мати формат, передбачений умовою задачі.

№ варіанту Умова задачі
2 У квадратній матриці підрахувати кількість невід’ємних елементів під головною діагоналлю.

Відповідь №4

Текст програми.

#include <stdio.h>

#include <conio.h>

#include <math.h>

#include <stdlib.h>

void main(void)

{

int A[20][20],i,j,a,y,w,x,v;

clrscr();

printf("\nЗавдання №4: Кількість невід'ємних елементів в квадратній матриці\n");

printf ("\n Ввести значення Х з клавіатури(1) або з файлу zad4.dat(2):");

scanf ("%d",&a);

if (a==1)

{

printf("\n Введіть розмірність матриці:");

scanf("%d",&w);

for (j=0;j<w;j++)

{

for(i=0;i<w;i++)

{

clrscr();

printf("\n Введіть[%d][%d] елемент матриці:",j+1,i+1);

scanf("%d",&A[i][j]);

}

}

clrscr();

}

else

{

FILE *fp;

fp=fopen("zad4.dat","r");

if (fopen("zad4.dat","r")==NULL)

{

printf("\n Не можливо відкрити файл, бо його нема");

goto

end;

}

else

{

fscanf(fp,"%d",&w);

for (j=0;j<w;j++)

{

for(i=0;i<w;i++)

{

fscanf(fp,"%d",&A[i][j]);

}

}

fclose(fp);

}

}

printf("\n Mатриця має такий вигляд:\n");

for (j=0;j<w;j++)

{

printf("\n ");

for(i=0;i<w;i++)

{

printf("%d ",A[i][j]);

}

}

v=0;y=0;

for (j=0;j<w;j++)

{

for(i=0;i<v;i++)

{

if (A[i][j]>0)

{ y++;

}

else{;}

}v++;

if (w<v) goto ok;

}ok:

printf ("\n Елементів невід'ємних під головною діагоналлю:%d",y);

FILE *fp;

fp=fopen("zad4.res","w");

fprintf(fp,"\n Елементів невід'ємних під головною діагоналлю:%d",y);

fclose(fp);

printf("\n Результат в файлі zad4.res ");

end: printf("\nНатисніть будь-яку клавішу для завершення \n ");

getch();

clrscr();}

Результат виконання

Завдання №4: Кількість невід'ємних елементів в квадратній матриці

Ввести значення Х з клавіатури(1) або з файлу zad4.dat(2):2

Mатриця має такий вигляд:

3 1 2 3

4 5 6 7

8 9 10 11

12 13 14 15

Елементів невід'ємних під головною діагоналлю:6

Результат в файлі zad4.res

Натисніть будь-яку клавішу для завершення


Блок-схема№4 до завдання№4.


такні



Література

1. Герберд Шилдт "Си для профессиональных программистов"

2. Ал. Стивенс "Техника програмирования на Турбо Си"

3. Шолмов Л.И. "Техника програмирования на Си"

4. Б.В. Керниган, Д.М. Ричи. "Язык Си"

5. Мюррэй Хилл, Нью Джерси Бьярн Страустрап "C++"

6. Громов, Титаренко "Программирование на Си"

7. Марченко А.Л C++. Бархатный путь

8. С.С. Гайсарян Объектно-ориентированные технологии проектирования прикладных программных систем

Оценить/Добавить комментарий
Имя
Оценка
Комментарии:
Хватит париться. На сайте FAST-REFERAT.RU вам сделают любой реферат, курсовую или дипломную. Сам пользуюсь, и вам советую!
Никита06:01:49 04 ноября 2021
.
.06:01:47 04 ноября 2021
.
.06:01:45 04 ноября 2021
.
.06:01:42 04 ноября 2021
.
.06:01:39 04 ноября 2021

Смотреть все комментарии (23)
Работы, похожие на Контрольная работа: Алгоритмічні мови програмування мова С

Назад
Меню
Главная
Рефераты
Благодарности
Опрос
Станете ли вы заказывать работу за деньги, если не найдете ее в Интернете?

Да, в любом случае.
Да, но только в случае крайней необходимости.
Возможно, в зависимости от цены.
Нет, напишу его сам.
Нет, забью.



Результаты(294035)
Комментарии (4229)
Copyright © 2005-2022 HEKIMA.RU [email protected] реклама на сайте