Автор: Пользователь скрыл имя, 06 Декабря 2011 в 17:11, курсовая работа
Условие задачи.
Составить алгоритм преобразования строки S в эквивалентное ей вещественное число. Алгоритм должен обрабатывать необязательный знак и вещественную точку , а так же целую и дробную части , каждая из которых может как присутствовать , так и отсутствовать . Представление числа в строке может содержать ведущие пробелы и заканчиваться любым нецифровым символом. При решении считать строку массивом целых чисел , содержащим коды символов . Для получения кода символа следует заключить в апострофы (‘). Например , строка <<-327.45A>>, представленная в виде массива , преобразуется в число <<-327.45.>>
Титульный Лист………………………………………………..…1 стр
Содержание…………………………………………………….…2 стр
Условие задачи…………………………………………………....3 стр
Постановка задачи……………………………….…………...…...4 стр
Алгоритм……………………………………………………..….5-7 стр
Словесный алгоритм решения…………………………………8-9 стр
Программа на С++……………………………………………..9-13 стр
Визуальный пример…………………………….……………..…14 стр
Используемая литература…………………
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
КЫРГЫЗСКОЙ
РЕСПУБЛИКИ
КЫРГЫЗСКИЙ
ГОСУДАРСТВЕННЫЙ
ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
ИМ И.РАЗЗАКОВА
ФАКУЛЬТЕТ
ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ
КАФЕДРА
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ
КОМПЬЮТЕРНЫХ СИСТЕМ
КУРСОВАЯ
РАБОТА
ПО ДИСЦИПЛИНЕ:
ПРОГРАММИРОВАНИЕ НА ЯЗЫКАХ ВЫСОКОГО
УРОВНЯ
НА ТЕМУ:
МАССИВЫ
ВЫПОЛНИЛ: СТУДЕНТ ГР. ПОВТ-3-10
РУКОВОДИТЕЛЬ: СТАМКУЛОВА Г.К.
БИШКЕК 2011
Содержание.
Условие задачи.
Составить алгоритм
преобразования строки S в эквивалентное
ей вещественное число. Алгоритм должен
обрабатывать необязательный знак и вещественную
точку , а так же целую и дробную части
, каждая из которых может как присутствовать
, так и отсутствовать . Представление
числа в строке может содержать ведущие
пробелы и заканчиваться любым нецифровым
символом. При решении считать строку
массивом целых чисел , содержащим коды
символов . Для получения кода символа
следует заключить в апострофы (‘). Например
, строка <<-327.45A>>, представленная
в виде массива , преобразуется в число
<<-327.45.>>
Постановка задачи.
В данной программе используются 4 библиотеки: <iostream.h> (функции ввода (с клавиатуры) и вывода (на экран), логические операции if (>, >=, <,<=, ==, !=, &&, ||), простые математические вычисления (*, +, -, /), операторы цикла (for, do while), оператор безусловного перехода goto), <fstream.h>(функции ввода из текстового документа и вывода в текстовый документ, функция условного завершения программы), <windows.h> (включение кириллицы).<math.h> для выполнения математических действий.
В программе использованы следующие переменные:
Алгоритм
Словесный алгоритм решения.
Программа на С++
#include<iostream.h>
#include<windows.h>
#include<fstream.h>
#include<math.h>
char NEWT[256];
char *rus(char*TEXT)
{
CharToOem (TEXT,NEWT);
return NEWT;
}
double troll(char b[])
{
int i,j,k;
double s;
j=0;
s=0;
for(i=19;i>=0;i--)
{
if(b[i]=='0'||b[i]=='1'|
{
if(b[i]=='.')
{
s=s/pow(10,j);
j=-1;
}
else if(b[i]!='-')
{
k=b[i]-'0';
s=s+k*pow(10,j);
}
else
{
s=s*(-1);
}
j++;
}
}
return s;
}
void main()
{
char
*a;
ofstream f;
ifstream w;
a=new char[20];
f.open("result.txt");
t1: for(int i=0;i<20;i++)
{
a[i]=' ';
}
cout<<rus("Для ввода символов через клавиатуру введите 1")<<endl;
cout<<rus("Для ввода символов через текстовые документы введите 2;")<<endl;
t2:cin>>i;
if(i==1)
{
cout<<rus("введите символы")<<endl;
cin>>a;
}
else if(i==2)
{
w.open("gogo.txt");
w>>a;
cout<<rus("введёные символы ")<<endl<<a<<endl;
}
else
{
cout<<rus("Введите 1 или 2: ");
goto t2;
}
f<<"введёные символы: "<<endl<<a<<endl;
cout<<rus("вывод числа из символьной строки: ")<<endl;
cout<<troll(a)<<endl;
f<<"вывод числа из символьной строки: "<<endl<<troll(a)<<endl;
f.close();
cout<<rus("резульат был записан в корневую папку:название result.txt")<<endl;
cout<<rus("Для повторения программы введите 1. Для выхода любой символ.")<<endl;
cin>>i;
if(i==1) goto t1;
delete []a;
}
Визуальный пример программы:
Вариант №1
Вариант №2
Ввод из txt файла.
Вывод в txt файл.
Используемая литература.
Информация о работе Нахождение минималного элемента в массиве