Автор: Пользователь скрыл имя, 29 Сентября 2013 в 16:12, контрольная работа
С тех пор он был перенесён на многие другие операционные системы и стал одним из самых используемых языков программирования. Си ценят за его эффективность. Он является самым популярным языком для создания системного программного обеспечения. Его также часто используют для создания прикладных программ. Несмотря на то, что Си не разрабатывался для новичков, он активно используется для обучения программированию. В дальнейшем синтаксис языка Си стал основой для многих других языков.
Введение………...……………………………………………………..………......3
Теоретическая часть………………………………………..…………..…………4
Задание А…………………………………………………………………………..8
Содержательная постановка задачи……………………………………………...8
Проектная часть……………………………………………….……………..…....8
Словестное описание алгоритма…………...………………………………..…...8
Блок – схема……….....…………………………………………………………....9
Описание и схема пользовательского интерфейса………………………….....10
Прикладная часть……………………………………………………………......11
Программное описание алгоритма……………..............………………………11
Результат выполнения программы………………………………………….….15
Задание Б…………………………………………………………………………15
Содержательная постановка задачи……………...……………………………..15
Проектная часть………………………………………………...………………..16
Словестное описание алгоритма…………...……………………..………..…...16
Блок – схема ……………………..……….....……………………………...........17
Описание и схема пользовательского интерфейса……...…………………..…18
Прикладная часть………….………………..…………………………..…….…19
Программное описание алгоритма……………...……………………….……..19
Результат выполнения программы………..…....….…………………….……..23
Заключение………………………………………………………….………...….24
Список использованной литературы………..……………………..………..…26
Приложение А………………....………………….………………………….......25
Приложение Б……………………………………………………………...….…25
Sgenerirovanna9 matrica
Rezul'tat pervoy 4asti zadani9
Summa elementov stroki
Rezul'tat vtoroy 4asti zadani9
Minimum Summ
Vichislit' zanovo?
(esli da t=1,esli net t=0)
перейдёт к пункту 2. Если вы выберете значение 0, программа завершит работу и перейдёт к пункту 4.
наименование группы и студента, выполнившего данную работу. С правой стороны программа выведет наименование преподавателя, проверившего работу.
==============================
******************************
==Vipolnil Nechayev Nikita Igorevi4==
=======Student gryppi BIS-12-2=======
******************************
******************************
==Proveril k.t.n. docent==
==_______________Ni A.G.==
==""__""____________2013==
******************************
Dl9 zaverweni9 nagmite klaviwu <Enter>
Ras4etno-grafi4eska9 rabota #2 zadanie B
============================== Sgenerirovanna9 matrica
Rezul'tat pervoy 4asti zadani9 Summa elementov stroki
Rezul'tat vtoroy 4asti zadani9 Minimum Summ
Vichislit' zanovo? (esli da t=1,esli net t=0) ============================== ****************************** ==Vipolnil Nechayev Nikita Igorevi4== =======Student gryppi BIS-12-2======= ****************************** ****************************** ==Proveril k.t.n. docent== ==_______________Ni A.G.== ==""__""____________2013== ****************************** Dl9 zaverweni9 nagmite klaviwu <Enter> |
#include <iostream>
#include <math.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#define m 8
#define n 8
int main()
{
int i,j,t1,t2,sum,min,t;
int a[m][n];
puts("\t\t Ras4etno-grafi4eska9 rabota #2 zadanie B");
puts("\t\t ==============================
m1:for(i=0; i<m; i++)
for(j=0; j<n; j++)
a[i][j]=rand()%10-1;
printf("\n Sgenerirovanna9 matrica\n");
for(i=0; i<m; i++)
{
for(j=0; j<n; j++)
printf("%4d",a[i][j]);
printf("\n");
}
printf("\n \t\t\t Rezul'tat pervoy 4asti zadani9");
printf("\n\n");
for(i=0; i<m; i++)
{
sum=0;
for(j=0; j<n; j++)
{
if(a[i][j]>=0)
sum+=a[i][j];
else
break;
}
if(j==n)
printf("Summa elementov stroki #%d=%d\n",i+1,sum);
}
printf("\n \t\t\t Rezul'tat vtoroy 4asti zadani9");
min=a[0][n-1];
for(i=1; i<m; i++)
{
t1=t2=0;
for(j=0; j<n-i; j++)
{
t1+=a[i+j][j];
t2+=a[j][i+j];
}
if(t1<min)
min=t1;
if(t2<min)
min=t2;
}
printf("\n Minimum Summ= %d",min);
printf("\n Vichislit' zanovo?\n (esli da t=1,esli net t=0)\nt=");
scanf ("%d",&t);
if (t>0)
{printf("");goto m1;}
if (t<1)
puts("\t\t ==============================
puts("
******************************
puts(" ==Vipolnil Nechayev Nikita Igorevi4==");
puts(" =======Student gryppi BIS-12-2=======");
puts("
******************************
puts("
puts("
puts("
puts("
puts("
printf(" Dl9 zaverweni9 nagmite klaviwu <Enter> ");
getch( ); /* Zadergka do nagati9 luboi klaviwi */
return 0;
}
С указателями
#include <iostream>
#include <math.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#define m 8
#define n 8
int main()
{
int i,j,t1,t2,sum,min,t;
int a[m][n];
int *mat;
puts("\t\t Ras4etno-grafi4eska9 rabota #2 zadanie B");
puts("\t\t ==============================
mat=&a[0][0];
m1:for(i=0; i<m; i++)
for(j=0; j<n; j++)
{
*mat=rand()%10-1;
mat++;
}
mat-=n*m;
printf("\n Sgenerirovanna9 matrica\n");
for(i=0; i<m; i++)
{
for(j=0; j<n; j++)
{
printf("%4d",*mat);
mat++;
}
printf("\n");
}
printf("\n \t\t\t Rezul'tat pervoy 4asti zadani9");
printf("\n\n");
mat=&a[0][0];
for(i=0; i<m; i++)
{
sum=0;
for(j=0; j<n; j++)
{
if(*mat>=0)
sum+=*mat;
else
break;
}
if(j==n)
printf("Summa elementov stroki #%d=%d\n",i+1,sum);
}
printf("\n \t\t\t Rezul'tat vtoroy 4asti zadani9");
min=a[0][n-1];
for(i=1; i<m; i++)
{
t1=t2=0;
for(j=0; j<n-i; j++)
{
t1+=*(mat+i*m+j);
t2+=*(mat+j*m+i);
}
if(t1<min)
min=t1;
if(t2<min)
min=t2;
}
printf("\n Minimum Summ= %d",min);
printf("\n Vichislit' zanovo?\n (esli da t=1,esli net t=0)\nt=");
scanf ("%d",&t);
if (t>0)
{printf("");goto m1;}
if (t<1)
puts("\t\t ==============================
puts("
******************************
puts(" ==Vipolnil Nechayev Nikita Igorevi4==");
puts(" =======Student gryppi BIS-12-2=======");
puts("
******************************
puts("
puts("
puts("
puts("
puts("
printf(" Dl9 zaverweni9 nagmite klaviwu <Enter> ");
getch( ); /* Zadergka do nagati9 luboi klaviwi */
return 0;
}
ЗАКЛЮЧЕНИЕ
В данной расчетно-графической работе были представлены примеры алгоритмов обработки сложных структур данных на языке Си (одномерные и двумерные массивы). Также были представлены блок-схемы, словесное и графическое описание. Как мы видим, для языка Си характерны лаконичность, стандартный набор конструкций управления потоком выполнения и обширный набор операций. Это и делает его столь востребованным языком в наши дни.
Приложение А
Использованные библиотеки
<iostream> — iostream — заголовочный файл с классами, функциями и переменными для организации ввода-вывода в языке программирования C++ (в данном случае мы подключаем также и цвет system(“color 1a”); через эту библиотеку).
<conio.h> — (от англ. console input-output — консольный ввод-вывод) — заголовочный файл, используемый для создания текстового интерфейса пользователя (использующая при вводе-выводе и представлении информации исключительно набор буквенно-цифровых символов).
<math.h> — заголовочный файл стандартной библиотеки языка программирования С, разработанный для выполнения простых математических операций.
<stdlib.h> — заголовочный файл стандартной библиотеки языка Си, который содержит в себе функции, занимающиеся выделением памяти, контроль процесса выполнения программы, преобразования типов и другие. Заголовок вполне совместим с C++ и известен в нём как cstdlib. Название «stdlib» расшифровывается как «standard library» (стандартная библиотека). В данном случае подключает rand.
<time.h> — заголовочный файл стандартной библиотеки языка программирования СИ, содержащий типы и функции для работы с датой и временем. В данном случае этот оператор служит для того, чтобы массив каждый раз генерировался по-разному.
Приложение Б
Использованные программы
AFCE – составление блок-схем.
Microsoft Visual Studio, Dev C++ – среды разработки данных программ.
Список использованной литературы
Стефан Р. Дэвис «C++».
С.В. Симонович «Информатика: Базовый курс». – СПб.: Питер, 2003.
Оверленд Б. «C++».
http://ru.wikipedia.org/wiki/
http://lord-n.narod.ru/
Керниган Б., Ритчи Д. Язык программирования Си. — 2-е изд. — М.: Вильямс, 2007. — С. 304.