Калькулятор

Автор: Пользователь скрыл имя, 16 Сентября 2011 в 02:13, лабораторная работа

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

Цель: Научиться работать с математическими функциями в Visual C++.
Задание: написать программу «Калькулятор».

Файлы: 1 файл

Отчеты.doc

— 364.50 Кб (Скачать)
p>void CSl_charDlg::OnChangeEdit33()

{

      counters();

} 

void CSl_charDlg::OnButton11()

{

UpdateData(true);

result=main_out+" "+sec_out; 

UpdateData(false);

}

void CSl_charDlg::OnButton22()

{

      UpdateData(true);

CString words_main[50];

CString words_sec[50];

for(int r=1;r<50;r+=2)

{

words_main[r]="1";

words_sec[r]="1";

}

int counter;

counter=0;

bool lastchar;

lastchar=true;

for (int i=0;i<main_out.GetLength();i++)

{

      if ((main_out.Mid(i,1)==" ")|(main_out.Mid(i,1)==".")|(main_out.Mid(i,1)==",")|(main_out.Mid(i,1)=="!")|(main_out.Mid(i,1)=="?"))

      {

            if(lastchar)

            {

                  counter++;

                  counter++;

                  lastchar=false;

            }

      }

      else

      {

            lastchar=true;

            words_main[counter]+=main_out.Mid(i,1);

            words_main[counter+1]="0";

      }

}

counter=0;

lastchar=true;

for (int l=0;l<sec_out.GetLength();l++)

{

      if ((sec_out.Mid(l,1)==" ")|(sec_out.Mid(l,1)==".")|(sec_out.Mid(l,1)==",")|(sec_out.Mid(l,1)=="!")|(sec_out.Mid(l,1)=="?"))

      {

            if(lastchar)

            {

                  counter++;

                  counter++;

                  lastchar=false;

            }

      }

      else

      {

            lastchar=true;

            words_sec[counter]+=sec_out.Mid(l,1);

            words_sec[counter+1]="0";

      }

} 
 

//-----------------------------------------

bool end_output;

int rnd;

result=""; 

do

{

      end_output=true;

      for (int j=1;j<50;j+=2)

      {

            if (words_main[j]=="0"|words_sec[j]=="0")

            {

                  end_output=false;

            }

      } 

      rnd=int(rand()*0.0005)*2+1;

            if(words_main[rnd]!="1")

            {

result+=words_main[rnd-1]+" ";

words_main[rnd]="1";

            }

            rnd=int(rand()*0.0005)*2+1;

            if(words_sec[rnd]!="1")

            {

result+=words_sec[rnd-1]+" ";

words_sec[rnd]="1";

            } 

}

while (!end_output); 
 
 
 

UpdateData(false); 

} 

void CSl_charDlg::OnButton33()

{

      UpdateData(true);

      result="";

      CString words_main[50]; 

      int counter;

      counter=0;

      bool lastchar;

      lastchar=true;

      for (int i=0;i<main_out.GetLength();i++)

      {

            if ((main_out.Mid(i,1)==" ")|(main_out.Mid(i,1)==".")|(main_out.Mid(i,1)==",")|(main_out.Mid(i,1)=="!")|(main_out.Mid(i,1)=="?"))

            {

                  if(lastchar)

                  {

                        counter++;

                        lastchar=false;

                  }

            }

            else

            {

                  lastchar=true;

                  words_main[counter]+=main_out.Mid(i,1);

            }

      }

      int numb_words;

    numb_words=0;

      for(int e=0;e<51;e++)

      {

            if( words_main[e]!="")

            {

                  numb_words++;

            }

      }

      int temp_mid;

      temp_mid= int(numb_words/2)-1;

      for(int p=0;p<=temp_mid;p++)

      {

            result+=words_main[p]+" ";

      }

      result+=sec_out+" "; 

      for(int w=temp_mid+1;w<50;w++)

      {

            result+=words_main[w]+" ";

      }

      UpdateData(false);

} 

Вывод:

В результате выполнения данной лабораторной работы были приобретены навыки работы со строками с использованием элементов управления ComboBox. 
 
 

рис.3 окно программы 
 
 

Блок-схема: Добавление слов из ComboBox в TextBox 

 

 
 

 

 
 

 
 
 
 
 
 
 
 
 
 
 
 

Блок-схема: добавление или удаление слов из ComboBox

 

 

 
 

 

 

 
 

 

 

 

 
 

 

 
 
 

 

 

 
 
 
 
 

Блок-схемы: Объединение строк  и подсчет количества символов

 
 

 
 
 

 
 
 
 

Блок-схема: Подсчет количества слов 

 

 
 
 

 

 

 
 

 
 
 

 

 
 
 

 
 

Блок-схема:  

Подсчет прописных и заглавных  букв 
 

 

 
 

 

 
 

 

 

 
 

 

 

 
 

 

 
 

 

 

 
 
 

 
 
 
 
 
 
 
 
 

Лабораторная  работа №4

«Матрица» 

Цель: научиться работать с полями ввода в Visual C++. 

Задание: дана матрица. Нужно написать программу, в которой будут выводиться элементы матрицы, находящиеся на диагонали. 

Текст программы: 

void CSl_matrixDlg::OnButton1()

{

      UpdateData(true);

      m_Out=m_2+"\n"+m_3+" "+m_6+"\n"+m_4+" "+m_7+" "+m_10+"\n"+m_5+" "+m_8+" "+m_11+" "+m_14+"\n"+m_9+" "+m_12+" "+m_15+"\n"+m_13+" "+m_16+"\n"+m_17;

UpdateData(false);

} 

Вывод:

В результате выполнения данной лабораторной работы были приобретены  навыки работы с полями ввода: запись элементов  диагоналей матрицы  для их вывода, вывод строк. 

 

рис.4 окно программы               
 

Блок-схема: Вывод строки, содержащей символы диагонали 

Информация о работе Калькулятор