Набор компиляторов для различных языков программирования, разработанный в рамках проекта GNU

Автор работы: Пользователь скрыл имя, 23 Мая 2013 в 18:51, курсовая работа

Краткое описание

Тип есть вполне конкретное представление некоторого понятия. Например, в С++ тип float с операциями +, -, * и т.д. является хотя и ограниченным, ноконкретным представлением математического понятия вещественного числа. Новыйтип создается для того, чтобы стать специальным и конкретным представлениемпонятия, которое не находит прямого и естественного отражения средивстроенных типов. Например, в программе из области телефонной связи можноввести тип trunk_module (линия-связи), в видеоигре - тип explosion (взрыв), ав программе, обрабатывающей текст, - тип list_of_paragraphs (список параграфов).

Содержание

ПЕРЕЧЕНЬ УСЛОВНЫХ ОБОЗНАЧЕНИЙ, СИМВОЛОВ, СОКРАЩЕНИЙ, ТЕРМИНОВ 4
ВВЕДЕНИЕ 5
1. ОПИСАНИЕ ИСПОЛЬЗОВАННЫХ КОМПОНЕНТОВ 6
1.1 Файлы 6
1.2 Структуры…………………………………………………………………..7
1.3 Классы 7
1.4 Методы динамической памяти 8
2. ОПИСАНИЕ АЛГОРИТМА ПРОГРАММЫ 12
3. ОПИСАНИЕ ОСНОВНЫХ ФУНКЦИЙ И ПЕРЕМЕННЫХ ПРОГРАММЫ 16
3.1 Функциясохранения в файл 17
3.2 Функция вывода данных из файла 18
3.3 Функции поиска данных 19
4. ТЕСТИРОВАНИЕ ПРОГРАММЫ 22
ЗАКЛЮЧЕНИЕ 26
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 27
ПРИЛОЖЕНИЯ 28

Вложенные файлы: 1 файл

Мила курсовая по ООП3.docx

— 985.76 Кб (Скачать файл)

charseachMode[2];

cout<<"Возможныезначениямодели: М,м,Ж,ж,W,w,M,m"<<endl;

cout<<"Введите искомую модель"<<endl;

cin>>seachName;

t.seachMode(seachName);

break;

case 3:

system("cls");

charseachColor[20];

cout<<"Введите искомый цвет"<<endl;

cin>>seachColor;

t.seachColor(seachColor);

break;

case 4:

system("cls");

intseachSize;

cout<<"Введите искомый размер"<<endl;

cin>>seachSize;

int proverka2;

                                                proverka2=0;

while(proverka2!=1)

{

if(seachSize<20||seachSize>50)

{

cout<<" "<<"-=Некорректный ввод  размера=-"<<endl;

cout<<" "<<"-=Можно искать размеры от 20-го до 50-го=-"<<endl;

cout<<" "<<"Введите размер: ";cin>>seachSize;

}else{proverka2=1;}

}

t.seachSize(seachSize);

break;

case 5:

system("cls");

intseachAmount;

cout<<"Введитеискомоеколичество"<<endl;

cin>>seachAmount;

intproverka=0;

while(proverka!=1)

                                                {

if(seachAmount<0)

                                                        {

cout<<" "<<"-=Некорректныйвводколичества=-"<<endl;

cout<<" "<<"-=Количество товара не может быть отрицательным=-"<<endl;

cout<<" "<<"Введите количество: ";cin>>seachAmount;

}else{proverka=1;}

                                                }

t.seachAmount(seachAmount);

break;

                                }

                        }

                       // break;

          }

    }

system("cls");

cout<<" -= Сейчасбудетпроизведёнвыходизпрограмы =- "<<endl;

system("pause");

return 0;

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Приложение 2. Функция проверки равенства символьных переменных

 

intSeach( char *c,char *c1)

{

if (strstr(c1,c))

return 1;

elsereturn 0;

                }

 

Приложение 3. Описание класса tovar и структуры tov

 

// заголовочный  файл с классами, функциями и  переменными для организации  ввода-вывода в языке программирования C++

#include <iostream.h>

#include <string.h>

#include <stdio.h>

#include "seach.h"

 

//производим  описание класса tovar

 

structtov

{

char name[50];//название

char model[2];//модель

int size;//размер

char color[20];//цвет

int amount;//количество

};

 

 

classtovar

{

private:

            //здесь производится описание закрытых функций и объявление переменных

FILE *f;

tov T;

intColz;

public:

      //функциясохранениявфайл

           void saveToFile(char name[50],char model[2],intsize,char color[20],int amount)

             {

                  //открываемфайл

if((f=fopen("txt.dat","ab"))==NULL)

                  {

system("cls");

cout<<" "<<"-=Файлнеоткрыт=-"<<endl;

system("pause");

return;

                  }

                  //записываемвфайл

fprintf(f,"%s %s %d %s %d\n",name,model,size,color,amount);//запоминаемназвание

//закрываем  файл

fclose(f);

             }

 

             //вывод на экран

void out()

             {

system("cls");

char name[50];char model[2];intsize;char color[20];int amount;

if((f=fopen("txt.dat","rb"))==NULL)

                                 {

system("cls");

fclose(f);

cout<<" "<<"-=Файлнеоткрыт=-"<<endl;

system("pause");

return;

                                 }

cout<<" "<<"Название"<<" || "<<"Модель"<<" || "<<"Размер"<<" || "<<"Цвет"<<" || "<<"Количество"<<endl;              

while(!feof(f))

                  {

fscanf(f,"%s\n",name);

fscanf(f,"%s\n",model);//запоминаем название

fscanf(f,"%d\n",&size);//запоминаем название

fscanf(f,"%s\n",color);//запоминаем название

fscanf(f,"%d\n",&amount);//запоминаем название

cout<<" "<<name<<" "<<model<<" "<<size<<" "<<color<<" "<<amount<<endl;

                  }

fclose(f);

system("pause");   system("cls");

             }

 

voidseachName(char name[50])

             {

                //поискпоимени

//загрузка в память

system("cls");

char name2[50];char model[2];intsize;char color[20];int amount;

if((f=fopen("txt.dat","rb"))==NULL)

                                 {

system("cls");

fclose(f);

cout<<" "<<"-=Файлнеоткрыт=-"<<endl;

system("pause");

return;

                                 }

cout<<" "<<"Название"<<" || "<<"Модель"<<" || "<<"Размер"<<" || "<<"Цвет"<<" || "<<"Количество"<<endl;

Colz=0;

while(!feof(f))

                  {

fscanf(f,"%s\n",name2);

fscanf(f,"%s\n",model);//запоминаем название

fscanf(f,"%d\n",&size);//запоминаем название

fscanf(f,"%s\n",color);//запоминаем название

fscanf(f,"%d\n",&amount);//запоминаем название

 

if(Seach(name2,name)==1)

                       {

cout<<" "<<name<<" "<<model<<" "<<size<<" "<<color<<" "<<amount<<endl;

Colz++;

                       }

                  }

if(Colz==0)

                  {

cout<<"Поиск не дал результатов"<<endl;

}

fclose(f);

system("pause");

system("cls");

 

             }

 

voidseachMode(char model[2])

             {

                //поискпомодели

//загрузка в память

system("cls");

char name[50];char model2[2];intsize;char color[20];int amount;

if((f=fopen("txt.dat","rb"))==NULL)

                                 {

system("cls");

fclose(f);

cout<<" "<<"-=Файлнеоткрыт=-"<<endl;

system("pause");

return;

                                 }

cout<<" "<<"Название"<<" || "<<"Модель"<<" || "<<"Размер"<<" || "<<"Цвет"<<" || "<<"Количество"<<endl;

Colz=0;

while(!feof(f))

                  {

fscanf(f,"%s\n",name);

fscanf(f,"%s\n",model2);//запоминаем название

fscanf(f,"%d\n",&size);//запоминаем название

fscanf(f,"%s\n",color);//запоминаем название

fscanf(f,"%d\n",&amount);//запоминаем название

if(Seach(model2,model)==1)

                       {

cout<<" "<<name<<" "<<model<<" "<<size<<" "<<color<<" "<<amount<<endl;

Colz++;

                       }

                  }

if(Colz==0)

                  {

cout<<"Поиск не дал результатов"<<endl;

}

fclose(f);

system("pause");

system("cls");

 

             }

 

voidseachColor(char color[20])

             {

                //поискпоцвету

//загрузка в память

system("cls");

char name[50];char model[2];intsize;char color2[20];int amount;

if((f=fopen("txt.dat","rb"))==NULL)

                                 {

system("cls");

fclose(f);

cout<<" "<<"-=Файлнеоткрыт=-"<<endl;

system("pause");

return;

                                 }

cout<<" "<<"Название"<<" || "<<"Модель"<<" || "<<"Размер"<<" || "<<"Цвет"<<" || "<<"Количество"<<endl;

Colz=0;

while(!feof(f))

                  {

fscanf(f,"%s\n",name);

fscanf(f,"%s\n",model);//запоминаем название

fscanf(f,"%d\n",&size);//запоминаем название

fscanf(f,"%s\n",color2);//запоминаем название

fscanf(f,"%d\n",&amount);//запоминаем название

if(Seach(color2,color)==1)

                       {

cout<<" "<<name<<" "<<model<<" "<<size<<" "<<color<<" "<<amount<<endl;

Colz++;

                       }

                  }

if(Colz==0)

                  {

cout<<"Поиск не дал результатов"<<endl;

}

fclose(f);

system("pause");

system("cls");

}

 

voidseachSize(intsize)

             {

                //поиск по размеру

                //загрузка в память

system("cls");

char name[50];char model[2];int size2;char color[20];int amount;

if((f=fopen("txt.dat","rb"))==NULL)

                                 {

system("cls");

fclose(f);

cout<<" "<<"-=Файлнеоткрыт=-"<<endl;

system("pause");

return;

                                 }

cout<<" "<<"Название"<<" || "<<"Модель"<<" || "<<"Размер"<<" || "<<"Цвет"<<" || "<<"Количество"<<endl;

Colz=0;

while(!feof(f))

                  {

fscanf(f,"%s\n",name);

fscanf(f,"%s\n",model);//запоминаем название

fscanf(f,"%d\n",&size2);//запоминаем название

fscanf(f,"%s\n",color);//запоминаем название

fscanf(f,"%d\n",&amount);//запоминаем название

if(size2==size)

                       {

cout<<" "<<name<<" "<<model<<" "<<size<<" "<<color<<" "<<amount<<endl;

Colz++;

                       }

                  }

if(Colz==0)

                  {

cout<<"Поиск не дал результатов"<<endl;

}

fclose(f);

system("pause");

system("cls");

 

             }

 

voidseachAmount(int amount)

             {

                //поискпоколичеству

//загрузка в память

system("cls");

char name[50];char model[2];intsize;char color[20];int amount2;

if((f=fopen("txt.dat","rb"))==NULL)

                                 {

system("cls");

fclose(f);

cout<<" "<<"-=Файлнеоткрыт=-"<<endl;

system("pause");

return;

                                 }

cout<<" "<<"Название"<<" || "<<"Модель"<<" || "<<"Размер"<<" || "<<"Цвет"<<" || "<<"Количество"<<endl;

Информация о работе Набор компиляторов для различных языков программирования, разработанный в рамках проекта GNU