Банк рефератов содержит более 364 тысяч рефератов, курсовых и дипломных работ, шпаргалок и докладов по различным дисциплинам: истории, психологии, экономике, менеджменту, философии, праву, экологии. А также изложения, сочинения по литературе, отчеты по практике, топики по английскому.
Полнотекстовый поиск
Всего работ:
364150
Теги названий
Разделы
Авиация и космонавтика (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)
Иностранный язык (62792)
Информатика (3562)
Информатика, программирование (6444)
Исторические личности (2165)
История (21320)
История техники (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)
Остальные рефераты (21697)
Педагогика (7850)
Политология (3801)
Право (682)
Право, юриспруденция (2881)
Предпринимательство (475)
Прикладные науки (1)
Промышленность, производство (7100)
Психология (8694)
психология, педагогика (4121)
Радиоэлектроника (443)
Реклама (952)
Религия и мифология (2967)
Риторика (23)
Сексология (748)
Социология (4876)
Статистика (95)
Страхование (107)
Строительные науки (7)
Строительство (2004)
Схемотехника (15)
Таможенная система (663)
Теория государства и права (240)
Теория организации (39)
Теплотехника (25)
Технология (624)
Товароведение (16)
Транспорт (2652)
Трудовое право (136)
Туризм (90)
Уголовное право и процесс (406)
Управление (95)
Управленческие науки (24)
Физика (3463)
Физкультура и спорт (4482)
Философия (7216)
Финансовые науки (4592)
Финансы (5386)
Фотография (3)
Химия (2244)
Хозяйственное право (23)
Цифровые устройства (29)
Экологическое право (35)
Экология (4517)
Экономика (20645)
Экономико-математическое моделирование (666)
Экономическая география (119)
Экономическая теория (2573)
Этика (889)
Юриспруденция (288)
Языковедение (148)
Языкознание, филология (1140)

Лабораторная работа: Программирование на языке Си++

Название: Программирование на языке Си++
Раздел: Рефераты по информатике, программированию
Тип: лабораторная работа Добавлен 08:37:01 06 февраля 2010 Похожие работы
Просмотров: 903 Комментариев: 2 Оценило: 0 человек Средний балл: 0 Оценка: неизвестно     Скачать

Федеральное агентство по образованию.

ГОУ ВПО Уральский Государственный Технический Университет – УПИ имени первого президента России Б. Н. Ельцина

Кафедра теплофизики и информатики в металлургии.

Дисциплина: Алгоритмизация и программирование.

Отчет

Лабораторная работа №1

"Знакомство с Си++. Выполнение программы простой структуры"

Вариант 9.

Преподаватель: Степура А. А.

Студент гр. Мт-190503: Свиткин В. Г.

Екатеринбург, 2009

Цель: Знакомство со средой программирования, создание, отладка и выполнение простой программы, содержащей ввод/вывод информации и простейшие вычисления.

Задачи: 1) вычислить значение выражения при различных вещественных типах данных: float и double. Сравнить и объяснить полученные результаты.

2) Вычислить значения выражений. Объяснить полученные результаты.

Задание 1. Вычислить значение выражения при различных вещественных типах данных (float и double). Вычисления следует выполнять с использованием промежуточных переменных. Сравнить и объяснить полученные результаты.

, при а=100, b=0.001

Текст программы:

#include <cstdlib>

#include <iostream>

#include <math.h>

int main(int argc, char *argv[]){

//Объявление переменных и исходные данные

floata1=100,b1=0.001,c1;

doublea2=100,b2=0.001,c2;

//Расчет значений выражения для типов floatи double

//Вывод результата с 15 знаками после запятой

printf(" Float: ");

c1=(pow(a1+b1,4.0)-(pow(a1,4)+4*pow(a1,3)*b1) )/ (6 * a1 *a1 *b1* b1+ 4*a1*b1*b1+pow(b1,4) );

printf("%.15f",c1);

printf("\nDouble: ");

c2=(pow(a2+b2,4)-(pow(a2,4)+4*pow(a2,3)*b2) )/ (6*a2*a2*b2*b2 +4*a2*b2*b2 + pow(b2,4) );

printf("%.15f",c2);

system("PAUSE");

returnEXIT_SUCCESS; }

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

Float: 0.993384063243866

Double: 0.993384430723606

Результаты совпадают с точностью до 6 знаков после запятой. Это происходит из-за того, что при вычислениях с типом float точность меньше, и при каждом вычислении накапливается погрешность. Вычисление с типом double точнее, чем с float.

Задание 2. Вычислить значения выражений. Объяснить полученные результаты.

n+++m

m-- >n

n-- >m

Текст программы:

#include <cstdlib>

#include <iostream>

#include <math.h>

int main(int argc, char *argv[]){

int m=7,n=4,y;

printf("n=%d,m=%d\n",n,m);

y=++n*++m;

printf("++n*++m=%d\n",y);

printf("n=%d,m=%d\n",n,m);

y=m++<n;

printf("m++<n=%d\n",y);

printf("n=%d,m=%d\n",n,m);

y=n++>m;

printf("n++>m=%d\n",y);

printf("n=%d,m=%d\n",n,m);

system("PAUSE");

return EXIT_SUCCESS; }

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

n=4,m=7

++n*++m=40

n=5,m=8

m++<n=0

n=5,m=9

n++>m=0

n=6,m=9

Объяснение результата .

При выполнении первого действия сначала переменные увеличиваются на единицу, затем умножаются: 5 * 7 =40. При выполнении второго действия сначала идет сравнение переменных, после этого переменная m увеличивается на единицу. При выполнении третьего действия сначала переменные сравниваются, затем переменная n увеличивается на единицу.


Федеральное агентство по образованию.

ГОУ ВПО Уральский Государственный Технический Университет – УПИ имени первого президента России Б. Н. Ельцина

Кафедра теплофизики и информатики в металлургии.

Дисциплина: Алгоритмизация и программирование.

Отчет

Лабораторная работа №2

" Использование основных операторов языка Си "

Вариант 9.

Преподаватель: Степура А. А.

Студент гр. Мт-190503: Свиткин В. Г.

Екатеринбург, 2009

Цель: Получение навыков в выборе и использовании операторов Си++; знакомство с итерационными процессами.

Задача: Используя оператор цикла, найти сумму элементов, указанных в задании. Результат напечатать, снабдив соответствующим заголовком.

Найти сумму ряда с точностью e=10-4 , общий член которого

Текст программы :

#include <cstdlib>

#include <iostream>

#include <math.h>

#define E 10e-4 //точность

int main(int argc, char *argv[]){

int n=1;

double s=0,a=1;

do {a*=10.0/(n+1); //расчет следующего числа ряда по рекуррентной формуле

s+=a;n++;}

while(a>E); //выход из цикла при достижении нужной точности

printf("Суммаряда:%f\n",s);

system("PAUSE");

return EXIT_SUCCESS;}

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

Сумма ряда: 2201.546404


Федеральное агентство по образованию.

ГОУ ВПО Уральский Государственный Технический Университет – УПИ имени первого президента России Б. Н. Ельцина

Кафедра теплофизики и информатики в металлургии.

Дисциплина: Алгоритмизация и программирование.

Отчет

Лабораторная работа №3

" Вычисление функций с использованием их разложения в степенной ряд "

Вариант 9.

Преподаватель: Степура А. А.

Студент гр. Мт-190503: Свиткин В. Г.

Екатеринбург, 2009

Цель: Практика в организации итерационных и арифметических циклов.

Задача: Для х изменяющегося от a до b с шагом (b-a)/k, где (k=10), вычислить функцию f(x), используя ее разложение в степенной ряд в двух случаях:

а) для заданного n;

б) для заданной точности e (e=0.0001).

Для сравнения найти точное значение функции.

Вариант 9

Функция:

Диапазон x:

Число слагаемых ряда:

n=3

Формула для вычисления суммы:

Текст программы :

#include <cstdlib>

#include <iostream>

#include <math.h>

#define A 0.1

#define B 0.8

#define E 10e-4

int main(int argc, char *argv[]){

float x,k=(B-A)/10.0,sn=0,se=0,t,y;

int i,j,n=3;

for(x=A;x<=B;x+=k){

sn=x;se=x;

for(i=1;i<=n;i++){

sn+=pow(x,4*i+1)/(4*i+1);};

j=1;

do {t=pow(x,4*j+1)/(4*j+1);

j++;se+=t;}

while(t>E);

y=log((1.0+x)/(1.0-x))/4.0 + atan(x)/2.0;

printf("x=%.2f SN=%f SE=%f Y=%f\n",x,sn,se,y);}

system("PAUSE");

return EXIT_SUCCESS;}

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

x=0.10 SN=0.100002 SE=0.100002 Y=0.100002

x=0.17 SN=0.170028 SE=0.170028 Y=0.170028

x=0.24 SN=0.240160 SE=0.240159 Y=0.240160

x=0.31 SN=0.310576 SE=0.310573 Y=0.310576

x=0.38 SN=0.381603 SE=0.381603 Y=0.381603

x=0.45 SN=0.453777 SE=0.453775 Y=0.453777

x=0.52 SN=0.527929 SE=0.527913 Y=0.527929

x=0.59 SN=0.605342 SE=0.605261 Y=0.605350

x=0.66 SN=0.688034 SE=0.688034 Y=0.688093

x=0.73 SN=0.779289 SE=0.779568 Y=0.779652

x=0.80 SN=0.884678 SE=0.886442 Y=0.886677


Федеральное агентство по образованию.

ГОУ ВПО Уральский Государственный Технический Университет – УПИ имени первого президента России Б. Н. Ельцина

Кафедра теплофизики и информатики в металлургии.

Дисциплина: Алгоритмизация и программирование.

Отчет

Лабораторная работа №4

" Работа с одномерными массивами "

Вариант 9.

Преподаватель: Степура А. А.

Студент гр. Мт-190503: Свиткин В. Г.

Екатеринбург, 2009

Цель: Получение навыков обработки одномерных массивов.

Задача: (Вариант 9)

Сформировать одномерный массив целых чисел, используя датчик случайных чисел.

Распечатать полученный массив.

Удалить первый элемент с заданным значением.

Сдвинуть массив циклически на К элементов вправо.

Распечатать полученный массив.

Текст программы:

#include <cstdlib>

#include <iostream>

#include <time.h>

int main(int argc, char *argv[]){

int i,j,x,k,size;

srand(time(NULL));

int a[100];

int b[100];

printf("Enter size:>");

scanf("%d",&size);

for(i=0;i<size;i++){

a[i]=rand()%100;printf("%d ",a[i]);}

printf("\nEnter value to destroy:>");scanf("%d",&x);

for(i=0;i<size;i++){

if(a[i]==x){

for(j=i;j<size-1;j++){

a[j]=a[j+1];}

size--;break;}}

for(i=0;i<size;i++){

printf("%d ",a[i]);}

printf("\nEnter K:>");scanf("%d",&k);

for(i=0;i<size;i++){

if((i+k)<size) {b[i+k]=a[i];}else {b[i+k-size]=a[i];}}

printf("Result:\n");

for(i=0;i<size;i++){

printf("%d ",b[i]);}

printf("\n");

system("PAUSE");

return EXIT_SUCCESS;}

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

Entersize:>10

50 17 89 6 52 0 60 30 44 21

Enter value to destroy:>89

50 17 6 52 0 60 30 44 21

Enter K:>3

Result:

30 44 21 50 17 6 52 0 60


Федеральное агентство по образованию.

ГОУ ВПО Уральский Государственный Технический Университет – УПИ имени первого президента России Б. Н. Ельцина

Кафедра теплофизики и информатики в металлургии.

Дисциплина: Алгоритмизация и программирование.

Отчет

Лабораторная работа №5

" Функции и массивы"

Вариант 9.

Преподаватель: Степура А. А.

Студент гр. Мт-190503: Свиткин В. Г.

Екатеринбург, 2009

Цель: Организовать обработку массивов с использованием функций, научиться передавать массивы как параметры функций.

Задача: Используя функции, решить указанную задачу. Массив должен передаваться в функцию как параметр:

Вариант 9. Написать функцию для вычисления суммы элементов квадратной матрицы, которые расположены ниже главной диагонали. С ее помощью найти максимальное значение такой суммы в n матрицах.

Текст программы :

#include <cstdlib>

#include <iostream>

#include <time.h>

#include <math.h>

#define SIZE 5

static int a[SIZE][SIZE];

void CreateArray(int a[SIZE][SIZE]){

int i,j;

for(i=0;i<SIZE;i++){

for(j=0;j<SIZE;j++){

a[i][j]=rand()%100;}}}

void PrintArray(int a[SIZE][SIZE]){

int i,j;

for(i=0;i<SIZE;i++){

for(j=0;j<SIZE;j++){

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

printf("\n");}}

int MatrixSum1(int m[SIZE][SIZE]){

int i,j,s=0;

for(i=1;i<SIZE;i++){

for(j=0;j<i;j++){

s+=m[i][j];}}

return s;}

int main(int argc, char *argv[]){

ints=0,i,t,N;

N=atoi(argv[1]); //количество матриц N вводится в параметре командной строки

srand(time(NULL));

for(i=1;i<=N;i++){

CreateArray(a);

PrintArray(a);

t=MatrixSum1(a);

printf("\nSumm:%d\n ",t);

if(t>s){s=t;}}

printf("\nMaximum %d\n",s);

system("PAUSE");

return EXIT_SUCCESS;}

Результат выполнения программы ( N =3):

0 72 91 65 7

59 23 13 17 77

55 16 74 40 85

18 56 19 89 63

20 87 49 89 35

Summ:468

30 92 77 90 68

40 72 79 7 91

16 46 34 78 0

9 7 57 33 60

5 31 2 71 84

Summ:284

47 22 56 36 57

19 27 1 5 75

25 67 52 35 73

90 0 34 9 78

99 27 48 33 59

Summ:442

Maximum 468


Федеральное агентство по образованию.

ГОУ ВПО Уральский Государственный Технический Университет – УПИ имени первого президента России Б. Н. Ельцина

Кафедра теплофизики и информатики в металлургии.

Дисциплина: Алгоритмизация и программирование.

Отчет

Лабораторная работа №6

" Строки"

Вариант 9.

Преподаватель: Степура А. А.

Студент гр. Мт-190503: Свиткин В. Г.

Екатеринбург, 2009

Цель: Изучение символьных и строковых переменных и способов их обработки в языке Си.

Задача: Задана строка, состоящая из символов. Символы объединяются в слова. Слова друг от друга отделяются одним или несколькими пробелами. В конце текста ставится точка. Текст содержит не более 255 символов. Выполнить ввод строки, используя функцию Gets(s) и обработку строки в соответствии со своим вариантом.

Вариант 9 . Преобразовать строку так, чтобы все слова в ней стали идентификаторами, слова состоящие только из цифр - удалить.

Текст программы :

#include <cstdlib>

#include <iostream>

#include <string.h>

void ClearString(char string[255]){

int i;

for(i=0;i<255;i++){string[i]='\0';}}

int main(int argc, char *argv[]){

char str[255],s[255]="",t[255]="",c;bool r;

int i=0,j=0;

printf("Enter text>"); gets(s);

strcpy(str,"");

do{r=false;

do{c=s[i];i++;

if(c>'9'){r=true;}

if(c==' '||c=='.'||c=='\0'){

if(t[0]>'9'){if(r){

strcat(str,t);strcat(str," ");}

} t[j]='\0';

j=0;ClearString(t);break;}

else {t[j]=c;j++;}

}while(1);

}while(c!='.'&&c!='\0');

printf("Right identifiers:\n");

puts(str);

system("PAUSE");

return EXIT_SUCCESS;}

Исходные данные:

A1 1FNumber 111 b 123c5 ffft.

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

Entertext> A1 1FNumber 111 b 123c5 ffft.

Right identifiers:

A1 Number b fff t

Оценить/Добавить комментарий
Имя
Оценка
Комментарии:
Где скачать еще рефератов? Здесь: letsdoit777.blogspot.com
Евгений07:31:07 19 марта 2016
Кто еще хочет зарабатывать от 9000 рублей в день "Чистых Денег"? Узнайте как: business1777.blogspot.com ! Cпециально для студентов!
19:45:05 28 ноября 2015

Работы, похожие на Лабораторная работа: Программирование на языке Си++

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

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



Результаты(151188)
Комментарии (1843)
Copyright © 2005-2016 BestReferat.ru bestreferat@mail.ru       реклама на сайте

Рейтинг@Mail.ru