Реферат по предмету "Информатика, программирование"


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

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

Отчет
Лабораторнаяработа №1
«Знакомствос Си++. Выполнение программы простой структуры»
Вариант 9.

Преподаватель: Степура А. А.
Студент гр. Мт-190503: Свиткин В. Г.

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

Цель: Знакомство со средойпрограммирования, создание, отладка и выполнение простой программы, содержащейввод/вывод информации и простейшие вычисления.
Задачи: 1) вычислить значение выражения при различныхвещественных типах данных: floatи double. Сравнить и объяснить полученныерезультаты.
2) Вычислить значениявыражений. Объяснить полученные результаты.
Задание 1. Вычислить значение выражения приразличных вещественных типах данных (float и double). Вычисления следуетвыполнять с использованием промежуточных переменных. Сравнить и объяснитьполученные результаты.
/>, при а=100, b=0.001
Текст программы:
#include
#include
#include
int main(intargc, char *argv[]){
//Объявление переменных иисходные данные
float a1=100,b1=0.001,c1;
double a2=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»);
return EXIT_SUCCESS;}
Результат выполненияпрограммы:
Float: 0.993384063243866
Double: 0.993384430723606
Результаты совпадают сточностью до 6 знаков после запятой. Это происходит из-за того, что привычислениях с типом float точностьменьше, и при каждом вычислении накапливается погрешность. Вычисление с типом double точнее, чем с float.
Задание 2.Вычислить значения выражений.Объяснить полученные результаты.
n+++m
m-- >n
n-- >m
Текст программы:
#include
#include
#include
int main(intargc, 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++
printf(«m++
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=5,m=9
n++>m=0
n=6,m=9
Объяснение результата.
При выполнении первогодействия сначала переменные увеличиваются на единицу, затем умножаются: 5 * 7=40. При выполнении второго действия сначала идет сравнение переменных, послеэтого переменная m увеличивается наединицу. При выполнении третьего действия сначала переменные сравниваются,затем переменная n увеличивается наединицу.

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

Отчет
Лабораторнаяработа №2
" Использование основных операторовязыка Си "
Вариант 9.

Преподаватель: Степура А. А.
Студент гр. Мт-190503: Свиткин В. Г.

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

Цель: Получение навыков в выборе ииспользовании операторов Си++; знакомство с итерационными процессами.
Задача: Используя оператор цикла, найтисумму элементов, указанных в задании. Результат напечатать, снабдивсоответствующим заголовком.
Найти сумму ряда сточностью e=10-4,общий член которого
/>
Текстпрограммы:
#include
#include
#include
#define E10e-4 //точность
int main(intargc, char *argv[]){
int n=1;
doubles=0,a=1;
do {a*=10.0/(n+1); //расчетследующего числа ряда по рекуррентной формуле
s+=a;n++;}
while(a>E); //выходиз цикла при достижении нужной точности
printf(«Сумма ряда:%f\n»,s);
system(«PAUSE»);
returnEXIT_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
#include
#include
#define A 0.1
#define B 0.8
#define E10e-4
int main(intargc, char *argv[]){
floatx,k=(B-A)/10.0,sn=0,se=0,t,y;
int i,j,n=3;
for(x=A;x
sn=x;se=x;
for(i=1;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=%.2fSN=%f SE=%f Y=%f\n»,x,sn,se,y);}
system(«PAUSE»);
returnEXIT_SUCCESS;}
Результат выполненияпрограммы:
x=0.10 SN=0.100002 SE=0.100002Y=0.100002
x=0.17SN=0.170028 SE=0.170028 Y=0.170028
x=0.24SN=0.240160 SE=0.240159 Y=0.240160
x=0.31SN=0.310576 SE=0.310573 Y=0.310576
x=0.38SN=0.381603 SE=0.381603 Y=0.381603
x=0.45SN=0.453777 SE=0.453775 Y=0.453777
x=0.52SN=0.527929 SE=0.527913 Y=0.527929
x=0.59SN=0.605342 SE=0.605261 Y=0.605350
x=0.66SN=0.688034 SE=0.688034 Y=0.688093
x=0.73SN=0.779289 SE=0.779568 Y=0.779652
x=0.80SN=0.884678 SE=0.886442 Y=0.886677

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

Отчет
Лабораторнаяработа №4
" Работа с одномерными массивами"
Вариант 9.

Преподаватель: Степура А. А.
Студент гр. Мт-190503: Свиткин В. Г.

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

Цель: Получение навыков обработкиодномерных массивов.
Задача: (Вариант 9)
Сформировать одномерныймассив целых чисел, используя датчик случайных чисел.
Распечатать полученныймассив.
Удалить первый элемент сзаданным значением.
Сдвинуть массивциклически на К элементов вправо.
Распечатать полученныймассив.
Текст программы:
#include
#include
#include
int main(intargc, char *argv[]){
inti,j,x,k,size;
srand(time(NULL));
int a[100];
int b[100];
printf(«Entersize:>»);
scanf("%d",&size);
for(i=0;i
a[i]=rand()%100;printf("%d",a[i]);}
printf("\nEntervalue to destroy:>");scanf("%d",&x);
for(i=0;i
if(a[i]==x){
for(j=i;j
a[j]=a[j+1];}
size--;break;}}
for(i=0;i
printf("%d",a[i]);}
printf("\nEnterK:>");scanf("%d",&k);
for(i=0;i
if((i+k)
printf(«Result:\n»);
for(i=0;i
printf("%d",b[i]);}
printf("\n");
system(«PAUSE»);
returnEXIT_SUCCESS;}
Результат выполненияпрограммы:
Enter size:>10
50 17 89 6 520 60 30 44 21
Enter value todestroy:>89
50 17 6 52 060 30 44 21
Enter K:>3
Result:
30 44 21 50 17 6 52 0 60

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

Отчет
Лабораторнаяработа №5
" Функции и массивы"
Вариант 9.

Преподаватель: Степура А. А.
Студент гр. Мт-190503: Свиткин В. Г.

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

Цель: Организовать обработку массивов сиспользованием функций, научиться передавать массивы как параметры функций.
Задача: Используя функции, решить указаннуюзадачу. Массив должен передаваться в функцию как параметр:
Вариант 9. Написатьфункцию для вычисления суммы элементов квадратной матрицы, которые расположеныниже главной диагонали. С ее помощью найти максимальное значение такой суммы вn матрицах.
Текстпрограммы:
#include
#include
#include
#include
#define SIZE 5
static inta[SIZE][SIZE];
void CreateArray(inta[SIZE][SIZE]){
int i,j;
for(i=0;i
for(j=0;j
a[i][j]=rand()%100;}}}
voidPrintArray(int a[SIZE][SIZE]){
int i,j;
for(i=0;i
for(j=0;j
printf("%d",a[i][j]);}
printf("\n");}}
intMatrixSum1(int m[SIZE][SIZE]){
int i,j,s=0;
for(i=1;i
for(j=0;j
s+=m[i][j];}}
return s;}
int main(intargc, char *argv[]){
int s=0,i,t,N;
N=atoi(argv[1]);//количество матриц N вводится впараметре командной строки
srand(time(NULL));
for(i=1;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»);
returnEXIT_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
#include
#include
void ClearString(char string[255]){
int i;
for(i=0;i
int main(int argc, char *argv[]){
charstr[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(«Rightidentifiers:\n»);
puts(str);
system(«PAUSE»);
return EXIT_SUCCESS;}
Исходные данные:
A1 1F Number 111 b 123c5 fff t.
Результат выполненияпрограммы:
Enter text> A1 1F Number 111 b 123c5 fff t.
Right identifiers:
A1 Number bfff t


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

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :

Реферат «Таблица заведомо элементарных структур» тзэс (автор: Владимир Кишкинцев)
Реферат Санкт-Петербург второй половины XVIII века Российское Просвещение
Реферат «Таможенно-тарифное регулирование внешнеэкономической деятельности и таможенная стоимость»
Реферат Технология приготовления блюд из жареной курицы и бисквитного теста
Реферат Основные принципы политической деятельности государя в концепции НМакиавелли
Реферат Отравления сельскохозяйственных животных
Реферат Воєнне мистецтво козацьких полковників у Визвольній війні українського народу середини ХУІІ ст
Реферат Критерії детермінуючі фактори та резерви ефективного лікування хворих з артеріальною гіпертензією
Реферат Реализация принципа наглядности при изучении темы физики Электромагнитные явления
Реферат Вредное влияние курения на организм. Способы избавления от курения.
Реферат Інформація до засідання робочої групи «Національні проекти» Про виконання Розділу 21 «Реалізація Національних проектів» Національного плану дій на 2011 рік Аналітична довідка про поточний стан виконання розділу 21 «Реалізація національних проектів» Н
Реферат Сравнительный анализ педагогического воспитания двух авторов: Росс Кэмпбелл и Ш.А. Амонашвили
Реферат Общие сведения о вредителях и болезнях плодовых и ягодных культур
Реферат Нормування і контроль у галузі охорони праці. Предмет "охорона праці" і його місце серед інших наук
Реферат История системного подхода в науке и технике