- •Методические указания к выполнению контрольной работы
- •Задания контрольной работы
- •Пример оформления контрольной работы
- •Содержание
- •А лгоритм решения задачи Листинг программы
- •Алгоритм решения задачи
- •Листинг программы
- •Результаты тестирования программы
- •Список использованных источников
- •Методические указания к выполнению курсовой работы
- •Пример оформления курсовой работы
- •Содержание
- •Задание 1 Условие задачи
- •Метод решения задачи
- •Описание переменных
- •Алгоритм решения задачи
- •Листинг программы
- •Описание переменных
- •Алгоритм решения задачи
- •Листинг программы
- •Описание переменных
- •Алгоритм решения задачи
- •Листинг программы
- •Описание переменных
- •Алгоритм решения задачи
- •Алгоритм решения задачи
- •Листинг программы
- •Результаты тестирования программы
- •Список использованных источников
Алгоритм решения задачи
Листинг программы
//---------------------------------------------------------------------------
#pragma hdrstop
//---------------------------------------------------------------------------
#include <conio.h> //библиотека подключения функции getch()
#include <iostream.h> //библиотека для cin и cout
#include <malloc.h> //библиотека для динамического выделения памяти
#include <fstream.h> //библиотека для ввода/вывода в файл
#include <windows.h> //библиотека используется в функции RUS
#include <math.h> //библиотека математических функций
#include <ctype.h> // библиотека проверки принадлежности символов
#include <stdlib.h> // библиотека некоторых стандартных функций
#include <string.h> // библиотека функций работы со строками
//
char bufRus[256];
//---------------------------------------------------------------------------
char* RUS(const char*text) //функция поддержки русского языка
{
CharToOem(text,bufRus);
return bufRus;
}
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{
cout<<RUS("*** Курсовая работа, задание 5 *** \n");
const int K=256;
char s[K],s1[K],s2[K];
char *Del=" .,!?";
char *ps[K],*t;
int N=0;
unsigned int m,M;
cout<<RUS("\nВведите текст на латинице\n");
gets(s);
ps[N]=strtok(s,Del);
while(ps[N])
{
N++;
ps[N]=strtok(NULL,Del);
}
for(int i=N-1;i>0;i--) //начало сортировки по алфавиту
for(int j=0;j<i;j++)
{ strcpy(s1,ps[j]);
strcpy(s2,ps[j+1]);
strlwr(s1); //преобразование к строчным буквам
strlwr(s2);
if(s1[0]>s2[0])
{
t=ps[j];
ps[j]=ps[j+1];
ps[j+1]=t;
}
} //конец сортировки по алфавиту
for( m=97,M=65;m<=122;m++,M++)
for(int i=N-1;i>0;i--) //начало сортировки по длине в группе
for(int j=0;j<i;j++)
if((strlen(ps[j])<strlen(ps[j+1]))&&(*ps[j]==(char)m||*ps[j]==(char)M)&&(*ps[j+1]==(char)m||*ps[j+1]==(char)M))
{
t=ps[j];
ps[j]=ps[j+1];
ps[j+1]=t;
}
cout<<RUS("\nОтсортированный массив слов\n");
for(int j=0;j<N;j++) //вывод массива
cout<<'\n'<<ps[j];
cout<<RUS("\nНажмите любую клавишу для завершения программы ...\n");
getch();
return 0;
}
//---------------------------------------------------------------------------
Результаты тестирования программы