Табличный калькулятор

Автор: Пользователь скрыл имя, 15 Мая 2013 в 00:47, курсовая работа

Описание работы

Программа - калькулятор, вычисляющая значение одной из заданных функций исходя из введённых значений. Всего в программе встроено 2 различных функции, выбор одной из них осуществляется с помощью одного из входных параметров. В программе реализованы следующие возможности:
Функции содержат в себе не менее 3 параметров и одну переменную-аргумент.
Одна из функций включает в себя тригонометрические функции.
Одна из функций имеет область определения, не равную всему пространству действительных чисел.

Работа содержит 1 файл

Kursach_Informtika.doc

— 204.00 Кб (Скачать)

Нижегородский Государственный

Технический Университет

 

 

 

 

Кафедра «Теории Цепей и Телекоммуникаций»

 

 

 

 

 

 

 

Курсовая работа по информатике

 

Табличный калькулятор

 

 

 

 

 

 

 

Выполнили:

студент гр. 10-ССК

Мартынов А. И.

 

Принял:

Жаринов Ф.В.

 

 

 

 

 

 

 

Нижний Новгород

2010 г.

Техническое задание

 

Программа - калькулятор, вычисляющая значение одной из заданных функций исходя из введённых значений. Всего в программе встроено 2 различных функции, выбор одной из них осуществляется с помощью одного  из входных параметров.

 

 

В программе реализованы следующие  возможности:

  • Функции содержат в себе не менее 3 параметров и одну переменную-аргумент.
  • Одна из функций включает в себя тригонометрические функции.
  • Одна из функций  имеет область определения, не равную всему пространству действительных чисел.

 

 

 

Примеры пользовательских интерфейсов

 

Первая страница, появляющаяся при  запуске программы, для вывода полного  меню всех возможностей программы, необходимо выбрать одну из функций.

 

 

Программа сообщает нам, что нужно выбрать действие и ввести данные;

 

Использованные приложения:

 

MS Visual Studio 2010

Обобщённая функциональная схема  программы

 


 

 

 

 


 



 


 


 

 





 


 


 





 

 

Исходный код программы

Calc.cpp

Начало работы программы:

 

#include <math.h>

#include "stdafx.h"

#include <iostream>

#include <conio.h>

#include "windows.h"

 

float fun_1(float x,float a,float b,float c)

float y=a*tan(b*x)+c;

return y;

}

float fun_2(float x,float a,float b,float c)

{

float y=(a*b+c)/x;

return y;

}

 

float fun_3(float x,float a,float b,float c)

{

float y=a*cos(b*x)+c;

return y;

}

 

int _tmain(int argc, char* argv[])

{

int door,door1,door2,step;

float a,b,c;

float x,x2,y;

for(;;)

{

system("cls");

printf("%15s",".....:::::::::::::Menu:::::::::::::.....\n");

printf("What function you want???\n");

printf("(1) y=a*sin(b*x)+c\n\n");

printf("(2) y=(a*b+c)/x\n\n");

printf("(3) y=cos(a*b+c)/x\n\n");

printf("Please enter the number of function: 1,2 or 3\n\n");

printf("For exit press 0\n");

scanf_s("%d",&door);

switch(door){

case 1:

printf("Resolve for point(1) or interval(2)???\n");

scanf_s("%d",&door1);

 

printf("Please enter the parameters(a,b,c): \n");

printf("Please enter parametr A\n");

scanf_s("%f",&a);

printf("OK!\n Please enter parametr B\n");

scanf_s("%f",&b);

printf("OK! \n Please enter parametr C\n");

scanf_s("%f",&c);

printf("OK! \n");

 

if(door1==1)

{

printf("Please enter the point X:\n"); scanf_s("%f",&x);

y=fun_1(x,a,b,c);

printf("%5.2f*sin(%5.2f*%5.2f)+%5.2f=%5.2f\n",a,b,x,c,y);

}

else if(door==2)

{

printf("Please enter the interval:\n");

printf("Please enter X1:\n");

scanf_s("%f",&x);

printf("Please enter X2:\n");

scanf_s("%f",&x2);

      if(x2<=x) printf("X2 must be > than the X!");

printf("Please enter the step:\n");

scanf_s("%d",&step);

for(float i=x;i<=x2;i=i+step)

{

y=fun_1(i,a,b,c);

printf("%5.2f*sin(%5.2f*%d)+%5.2f=%5.2f\n",a,b,i,c,y);

}

}

system("pause");

break;

case 2:

printf("Resolve for point(1) or interval(2)???\n");

scanf_s("%d",&door1);

 

printf("Please enter the parameters: \n");

printf("Please enter a\n");

scanf_s("%f",&a);

printf("Please enter b\n");

scanf_s("%f",&b);

printf("Please enter c\n");

scanf_s("%f",&c);

 

if(door1==1)

{

printf("Please enter the point X:\n");

scanf_s("%f",&x);

if(x==0)

{

printf("x must not be 0\n");

system("pause");

break;

}

y=fun_2(x,a,b,c);

printf("(%5.2f*%5.2f+%5.2f)/%5.2f=%5.2f\n",a,b,c,x,y);

printf("created a file named data\n");

printf("For print press 1, to erase file press 0\n");

}

else if(door1==2)

{

printf("Please enter the interval:\n");

printf("Please enter X1:");

scanf_s("%f",&x);

if(x==0)

{

printf("x must not be 0\n");

system("pause");

break;

}

printf("Please enter X2:");

scanf_s("%f",&x2);

if(x2<=x)

{

printf("X2 must be > X !\n");

system("pause");

break;

}

printf("Please enter the step:\n");

scanf_s("%d",&step);

if(step==0)

{

printf("step must not be 0!\n");

system("pause");

break;

}

if(step>(x2-x))

{

printf("step must be < or = %5.2f!\n",(x2-x));

system("pause");

break;

}

for(float i=x;i<=x2;i=i+step)

{

y=fun_2(i,a,b,c);

printf("(%5.2f*%5.2f+%5.2f)/%5.2f=%5.2f\n",a,b,c,x,y);

}

}

 

system("pause");

break;

case 3:

printf("Resolve for point(1) or interval(2)???\n");

scanf_s("%d",&door2);

 

printf("Please enter the parameters: \n");

printf("Please enter a\n");

scanf_s("%f",&a);//

printf("Please enter b\n");

scanf_s("%f",&b);

printf("Please enter c\n");

scanf_s("%f",&c);

 

if(door2==1)

{

printf("Please enter the point X:\n");

scanf_s("%f",&x);

y=fun_3(x,a,b,c);

printf("%5.2f*cos(%5.2f*%5.2f)+%5.2f=%5.2f\n",a,b,x,c,y);

}

else if(door2==2)

{

printf("Please enter the interval:\n");

printf("Please enter X1:\n");

scanf_s("%f",&x);

printf("Please enter X2:\n");

scanf_s("%f",&x2);

      if(x2<=x)

printf("X2 must be > than the X!");

printf("Please enter the step:\n");

scanf_s("%d",&step);

for(float i=x;i<=x2;i=i+step)

{

y=fun_3(i,a,b,c);

printf("%5.2f*cos(%5.2f*%d)+%5.2f=%5.2f\n",a,b,i,c,y);

}

}

system("pause");

break;

case 0:

return 0;

default:

printf("Wrong number. Enter the number from 0 to 2\n");

system("pause");

break;

}

}

}

 

 

 

 

stdafx.h

Включаемый файл для стандартных системных включаемых файлов

 

#pragma once

 

#include "targetver.h"

 

#include <stdio.h>

#include <tchar.h>

 

 

Targetver.h

#pragma once

 

#ifndef _WIN32_WINNT           

#define _WIN32_WINNT 0x0600    

#endif

 

 

 

 

 

SysInfo.cpp

 

 

#include <windows.h>

#include <stdio.h>

#define BUFSIZE 1024

 

void main ()

{

   SYSTEM_INFO siSysInfo;

 

  

 

   GetSystemInfo(&siSysInfo);

 

  

  

   printf("Hardware information: \n");

   printf("  OEM ID: %u\n", siSysInfo.dwOemId);

   printf("  Number of processors: %u\n",

      siSysInfo.dwNumberOfProcessors);

   printf("  Page size: %u\n", siSysInfo.dwPageSize);

   printf("  Processor type: %u\n", siSysInfo.dwProcessorType);

   printf("  Minimum application address: %lx\n",

      siSysInfo.lpMinimumApplicationAddress);

   printf("  Maximum application address: %lx\n",

      siSysInfo.lpMaximumApplicationAddress);

   printf("  Active processor mask: %u\n",

      siSysInfo.dwActiveProcessorMask);

 

 

   BOOL fResult;

   int aMouseInfo[3];

 

   fResult = GetSystemMetrics(SM_MOUSEPRESENT);

 

   if (fResult == 0)

      printf("No mouse installed.\n");

   else

   {

      printf("Mouse installed.\n");

 

     

      fResult = GetSystemMetrics(SM_SWAPBUTTON);

 

      if (fResult == 0)

         printf("Buttons not swapped.\n");

      else printf("Buttons swapped.\n");

 

       

      if( fResult )

      {

         printf("Speed: %d\n", aMouseInfo[2]);

         printf("Threshold (x,y): %d,%d\n",

            aMouseInfo[0], aMouseInfo[1]);

system("pause");

 

      }

   }

   {

    WinExec ( "C:\\calc.exe",  WM_SHOWWINDOW);

   }

}

 

 


Информация о работе Табличный калькулятор