SOFTCALC
Publicado por DEMIS CARLOS FONSECA GOMES 27/05/2004
[ Hits: 5.792 ]
Homepage: www.portonaweb.com
Download Calculadora SOFTCALC.cpp
Uma Calculadora com Multi-Funções. Soma,
/* Programa que executa as funcoes de uma calculadora,
Por Dêmis Carlos Fonseca Gomes
demiscarlos@hotmail.com
Ciencia da Computacao
2ș Periodo
Universidade Federal do Tocantins
Palmas-TO.
*/
#include<stdio.h>
#include<conio.h>
#include<conio.c>
#include<math.h>
#include<stdlib.h>
main()
{
float an,rd,x,y,z,i,r,x1,x11,x2,x22,R,ang,h,pri,razao,n,esfera;
int a,b,c,det,a11,a12,a21,a22,o,pi,d;
printf("\n\n\n");
printf("xxxxxx xxxxxx xxxxxx xxxxxx xxxxxx xxxxxx xx xxxxxx\n");
printf("xxxxxx xxxxxx xxxxxx xxxxxx xxxxxx xxxxxx xx xxxxxx\n");
printf("xx xx xx xx xx xx xx xx xx xx\n");
printf("xx xx xx xx xx xx xx xx xx xx\n");
printf("xx xx xx xx xx xx xx xx xx xx\n");
printf("xx xx xx xx xx xx xx xx xx xx\n");
printf("xx xx xx xx xx xx xx xx xx xx\n");
printf("xxxxxx xx xx xxxxx xx xx xxxxxx xx xx\n");
printf("xxxxxx xx xx xxxxx xx xx xxxxxx xx xx\n");
printf(" xx xx xx xx xx xx xx xx xx xx\n");
printf(" xx xx xx xx xx xx xx xx xx xx\n");
printf(" xx xx xx xx xx xx xx xx xx xx\n");
printf(" xx xx xx xx xx xx xx xx xx xx\n");
printf("xxxxxx xxxxxx xx xx xxxxxx xx xx xxxxxx xxxxxx\n");
printf("xxxxxx xxxxxx xx xx xxxxxx xx xx xxxxxx xxxxxx\n\n\n");
printf("\tDesenvolvido por Demis Carlos Fonseca Gomes\n\n");
printf("\t\nCaso este programa nao esteja rodando em tela cheia pressione alt+enter\n\n");
printf("\t\nPressione ENTER para continuar");
getchar();
system("cls");
printf("\t_-_-_-_-_-_-_-_ Demis Carlos Softwares _-_-_-_-_-_-_-_-_\n\n\n");
printf("\t+ - + - + - + - + - Calculadora + - + - + - + - + - + \n\n\n");
printf("\tDigite < 1 > para somar < 2 > para subtrair\n");
printf("\t < 3 > para multiplicar < 4 > para dividir\n");
printf("\t < 5 > para raiz quadrada < 6 > para Funcao do 2 grau\n");
printf("\t < 7 > para det matriz < 8 > para o fatorial\n");
printf("\t < 9 > numero ao quadrado < 10 > para ver calendario\n");
printf("\t < 11 >area do quadrado < 12 > area do retangulo\n");
printf("\t < 13 >area do paralelogramo < 14 > area do triangulo\n");
printf("\t < 15 >area do losango < 16 > area do trapezio\n");
printf("\t < 17 >area do circulo < 18 > area do setor circular\n");
printf("\t < 19 >Prog Aritmetica < 20 > area da esfera\n");
printf("\t < 0 > para encerrar o programa\n\n");
printf("\tInstrucao: Apos digitar o valor tecle ENTER, nao digite letras\n\n\n");
printf("\tDigite uma das opcoes acima: ");
scanf("%f",&i);
system("cls");
while (i!=0)
{
if (i>20 && i!=0)
{
printf("\n\nOpcao Invalida/ Digite as opcoes de 1 a 19 ou 0 para encerrar o programa\n\n\n\n");
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==1)
{
z=x+y;
printf("\tDigite o primeiro numero: ");
scanf("%f",&x);
printf("\tmais\n");
printf("\t o segundo numero: ");
scanf("%f",&y);
z=y+x;
printf("\nO resultado e: ""%0.1f\n",z);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==2)
{
z=x-y;
printf("\tDigite o primeiro numero: ");
scanf("%f",&x);
printf("\tmenos\n");
printf("\t o segundo numero: ");
scanf("%f",&y);
z=x-y;
printf("\nO resultado e: ""%0.1f\n\n",z);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==3)
{
z=x*y;
printf("\tDigite o primeiro numero: ");
scanf("%f",&x);
printf("\tmultiplicado\n");
printf("\t pelo segundo numero: ");
scanf("%f",&y);
z=x*y;
printf("\nO resultado e: ""%0.1f\n",z);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==4)
{
z=x/y;
printf("\tDigite o primeiro numero: ");
scanf("%f",&x);
printf("\tdividido\n");
printf("\t pelo segundo numero: ");
scanf("%f",&y);
z=x/y;
printf("\nO resultado e: ""%0.1f \n",z);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==5)
{
printf("\tVoce deseja a raiz de: ");
scanf("%f",&r);
r=sqrt(r);
printf("\nA raiz desse numero e: %0.0f (ou aproximadamente)\n",r);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==6)
{
printf("\tCalculo para resultados inteiros\n\n");
printf("\tDigite o valor de b: ");
scanf("%d",&b);
printf("\tDigite o valor de a: ");
scanf("%d",&a);
printf("\tDigite o valor de c: ");
scanf("%d",&c);
d=b*b-4*(a*c);
printf("\nDelta vale ""%d",d);
rd=sqrt(d);
printf("\nA raiz de delta eh: %0.1f",rd);
x1=-b+rd;
x11=x1/2*a;
printf("\nX1 vale ""%0.1f",x11);
x2=-b-rd;
x22=x2/2*a;
printf("\nX2 vale ""%0.1f\n",x22);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==7)
{
printf("\tMatriz com 2 linhas e 2 colunas");
printf("\nDigite um numero para a linha 1 e coluna 1: ");
scanf(" %d", &a11);
printf("\nDigite um numero para a linha 1 e coluna 2: ");
scanf(" %d", &a12);
printf("\nDigite um numero para a linha 2 e coluna 1: ");
scanf(" %d", &a21);
printf("\nDigite um numero para a linha 2 e coluna 2: ");
scanf(" %d", &a22);
det=a11*a22-a12*a21;
printf("\nA matriz e \n");
printf("\t%d %d\n\t%d %d\n" ,a11 ,a12 ,a21 ,a22);
printf("\nDeterminate= %d\n", det);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==8)
{
printf("\n\n\n");
printf("\t\2\2\2\2\2\2\n");
printf("\t\2\2\2\2\2\2\n");
printf("\t\2\2\n");
printf("\t\2\2\n");
printf("\t\2\2\2\2\2\2\n");
printf("\t\2\2\2\2\2\2 \2\2\2\2\2\2 \2\2\2\2\2\2 \2\2\2\2\2\2 \2\2\2\2\2\2 \2\2 \2\2\2\2\2\2 \2\2\n");
printf("\t\2\2 \2\2 \2\2 \2\2 \2\2 \2\2 \2\2 \2\2 \2\2 \2\2 \2\2 \2\2\n");
printf("\t\2\2 \2\2\2\2\2\2 \2\2 \2\2 \2\2 \2\2\2\2 \2\2 \2\2\2\2\2\2 \2\2\n");
printf("\t\2\2 \2\2 \2\2 \2\2 \2\2 \2\2 \2\2 \2\2 \2\2 \2\2 \2\2 \2\2\n");
printf("\t\2\2 \2\2 \2\2 \2\2 \2\2\2\2\2\2 \2\2 \2\2 \2\2 \2\2 \2\2 \2\2\2\2\2\2\n\n\n");
printf("Tecle enter para continuar\n");
getch();
system("cls");
int n;
long fn,i;
i=2;
printf("\n\nVoce deseja o fatorial de: \n");
scanf("%d",&n);
for(fn=1;i<=n;i++)
fn=fn*i;
printf("\n\nSeu fatorial e: ""%d\n\n",fn);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==9)
{
printf("\tDigite o numero: ");
scanf("%f",&x);
z=x*x;
printf("\nEste numero elevado a dois eh ""%0.1f\n\n",z);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==10)
{
int ds, /* Dia da semana */
nd, /* Numero de dias do mes */
dia, /* Variavel para impressao do dia */
mes, /* Numero do mes */
ano, /* Ano */
c_ds, /* Contador do dia da semana */
c_dia, /* Contador do dia a ser impresso */
c_mes, /* Contador de meses */
c_ano, /* Contador de anos */
i_semana; /* Contador auxiliar para a impressÆo */
/* Inicializacao das variaveis */
dia=1;
ds=2; /* ds=2 pois 1/1/1900 e segunda feira */
c_ds=1;
c_dia=1;
c_mes=1;
c_ano=1900; /* Inicializa a contagem a partir de 1900 */
printf("Digite o mes: ");
scanf("%d", &mes);
while(mes<1||mes>12)
{
printf("\nMes inexistente\n");
printf("Digite o mes: ");
scanf("%d", &mes);
}
printf("Digite o ano (a partir de 1900): ");
scanf("%d", &ano);
while(ano<1900)
{
printf("\nDigite ano maior que 1900: ");
scanf("%d", &ano);
}
while (c_ano<ano){
if (c_ano%4==0 && (c_ano%100!=0 || c_ano%400==0)){
ds=ds+2; /* Se o ano for bissexto */
c_ano=c_ano+1; /* somar 2 ao ds. */
if (ds==8)
ds=1;
/* Como sao apenas 7 os dias */
if (ds==9) /* da semana, a variavel ds */
ds=2; /* so pode variar de 1 a 7 */
}
else { /* Se o ano nao for bissexto */
ds=ds+1; /* somar um ao ds */
c_ano=c_ano+1;
if (ds==8)
ds=1;
}
}
while (c_mes<mes){ /* Contagem dos meses */
if (c_mes==1 || c_mes==3 || c_mes==5 || c_mes==7 || c_mes==8 ||
c_mes==10 || c_mes==12)
nd=31; /* Meses que tem 31 dias */
else if (c_mes==2) /* Se o mes for fevereiro... */
if (ano%4==0 && (ano%100!=0 || ano%400==0))
nd=29;
else
nd=28; /* ...verificar se o ano e bissexto */
else
nd=30;
while (c_ds<=nd){
ds=ds+1; /* Contagem de ds em cada mes */
c_ds=c_ds+1;
if (ds==8)
ds=1;
}
c_ds=1;
c_mes=c_mes+1;
}
if (mes==1 || mes==3 || mes==5 || mes==7 || mes==8 || mes==10 || mes==12)
nd=31; /* Meses com 31 dias */
else if (mes==2)
if (ano%4==0 && (ano%100!=0 || ano%400==0))
nd=29;
else /* Verifica se o ano e bissexto */
nd=28; /* para determinar se fevereiro */
/* tem 28 ou 29 dias. */
else
nd=30; /* Senao, o mes tem 30 dias. */
system("cls");
textcolor(12);
printf("\n\n\n D S T Q Q S S\n");
textcolor(18);
while (ds>1){
printf(" ");
ds--;
c_dia++;
}
while (dia<=nd){ /* O dia nao pode ultrapassar
o numero de dias do mes */
if (c_dia==7){
if (dia>=10){
printf("%d\n", dia); /* Se chegar ao sabado... */
dia=dia+1; /* imprime e pula linha */
c_dia=1;
}
else {
printf(" %d\n", dia); /* Se o digito for <10... */
dia=dia+1; /* da espaco antes de imp. */
c_dia=1;
}
}
else if (dia>=10){ /* Se nao chegou ao sabado */
printf("%d ", dia); /* nao pode pular linha */
dia=dia+1;
c_dia=c_dia+1;
}
else {
printf(" %d ",dia); /* Se o digito for <10... */
dia=dia+1; /* da espaco antes de imp. */
c_dia=c_dia+1;
}
}
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==11)
{
printf("________________\n");
printf("| |\n");
printf("| |\n");
printf("| |\n");
printf("| |\n");
printf("________________\n");
printf(" lado\n\n");
printf("\tDigite o valor do lado: ");
scanf("%f",&x);
z=x*x;
printf("\nA area deste quadrado eh ""%0.1f\n\n",z);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==12)
{
printf("________________ <\n");
printf("| | <\n");
printf("| | <--altura\n");
printf("----------------- <\n");
printf(" base\n\n");
printf("\tDigite o valor da base: ");
scanf("%f",&x);
printf("\tDigite o valor da altura: ");
scanf("%f",&y);
z=x*y;
printf("\nA area deste retangulo eh ""%0.1f\n\n",z);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==13)
{
printf(" ________________ <\n");
printf(" / / <\n");
printf(" / / <\n");
printf(" / / <-- altura\n");
printf(" / / <\n");
printf("----------------- <\n");
printf(" base\n\n");
printf("\tDigite o valor da base: ");
scanf("%f",&x);
printf("\tDigite o valor da altura: ");
scanf("%f",&y);
z=x*y;
printf("\nA area deste paralelogramo eh ""%0.1f\n\n",z);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==14)
{
printf(" /\\ <\n");
printf(" / \\ <-- altura\n");
printf(" / \\ <\n");
printf(" ------ <\n");
printf(" base\n");
printf("\tDigite o valor da base: ");
scanf("%f",&x);
printf("\tDigite o valor da altura: ");
scanf("%f",&y);
z=(x*y)/2;
printf("\nA area deste triangulo eh ""%0.1f\n\n",z);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==15)
{
printf(" /\\ <\n");
printf(" / \\ <\n");
printf(" / \\ <\n");
printf(" \\ / <-- D\n");
printf(" \\ / <\n");
printf(" \\/ <\n");
printf(" |_____|\n");
printf(" d\n");
printf("\tDigite o valor da distancia D: ");
scanf("%f",&x);
printf("\tDigite o valor da distancia d: ");
scanf("%f",&y);
z=(x*y)/2;
printf("\nA area deste losango eh ""%0.1f\n\n",z);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==16)
{
printf(" base menor\n");
printf(" ________ <\n");
printf(" / \\ <\n");
printf(" / \\ <\n");
printf(" / \\ <-- altura\n");
printf(" /___________________\ <\n");
printf(" base maior\n");
printf("\tDigite o valor da base maior: ");
scanf("%f",&x);
printf("\tDigite o valor da base menor: ");
scanf("%f",&y);
printf("\tDigite o valor da altura: ");
scanf("%f",&h);
z=(x+y)*h/2;
printf("\nA area deste trapezio eh ""%0.1f\n\n",z);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==17)
{
printf(" oo oo\n");
printf(" oo oo\n");
printf(" oo oo\n");
printf(" oo -R-->oo\n");
printf(" oo oo\n");
printf(" oo oo\n\n");
pi=180;
printf("\tDigite o valor do raio: ");
scanf("%f",&R);
z=pi*(R*R);
printf("\nA area deste circulo eh ""%0.1f\n\n",z);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==18)
{
printf(" oo oo\n");
printf(" oo oo\n");
printf(" oo_____ oo\n");
printf(" oo \\ oo\n");
printf(" oo \\oo\n");
printf(" oo oo\n\n");
pi=180;
printf("\tDigite o valor do raio: ");
scanf("%f",&R);
printf("\tDigite o valor do angulo: ");
scanf("%f",&ang);
z=pi*(R*R)*(ang)/360;
printf("\nA area deste setor circular eh ""%0.1f\n\n",z);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==20)
{
printf("\tDigite o raio ");
scanf("%f",&r);
pi=3,14;
esfera=4*pi*(r*r);
printf("\nO resultado e: ""%0.1f\n\n",esfera);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (i==19)
{
printf("\tDigite qualquer valor se o ultimo termo tiver sido informado\n");
printf("\tse nao, digite 123): ");
scanf("%f",&x);
if (x!=123)
{
printf("\tDigite o ultimo termo:\n");
scanf("%f",&an);
printf("\tDigite o valor do primeiro termo: ");
scanf("%f",&pri);
printf("\tDigite o valor da razao: ");
scanf("%f",&razao);
n=((an-pri)+razao)/razao;
printf("\nEsta P.A. vale ""%0.1f\n\n",n);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
if (x==123)
{
printf("\tDigite o termo que deseja obter(primeiro, segundo...:\n");
scanf("%f",&n);
printf("\tDigite o valor do primeiro termo: ");
scanf("%f",&pri);
printf("\tDigite o valor da razao: ");
scanf("%f",&razao);
an=pri+(n-1)*razao;
printf("\nEsta P.A. vale ""%0.1f\n\n",an);
printf("\n\nTecle enter para voltar ao menu de opcoes\n");
getch();
}
}
system("cls");
printf("\t_-_-_-_-_-_-_-_ Demis Carlos Softwares _-_-_-_-_-_-_-_-_\n\n\n");
printf("\t+ - + - + - + - + - Calculadora + - + - + - + - + - + \n\n\n");
printf("\tDigite < 1 > para somar < 2 > para subtrair\n");
printf("\t < 3 > para multiplicar < 4 > para dividir\n");
printf("\t < 5 > para raiz quadrada < 6 > para Funcao do 2 grau\n");
printf("\t < 7 > para det matriz < 8 > para o fatorial\n");
printf("\t < 9 > numero ao quadrado < 10 > para ver calendario\n");
printf("\t < 11 >area do quadrado < 12 > area do retangulo\n");
printf("\t < 13 >area do paralelogramo < 14 > area do triangulo\n");
printf("\t < 15 >area do losango < 16 > area do trapezio\n");
printf("\t < 17 >area do circulo < 18 > area do setor circular\n");
printf("\t < 19 >Prog Aritmetica < 20 > area da esfera\n");
printf("\t < 0 > para encerrar o programa\n\n");
printf("\tInstrucao: Apos digitar o valor tecle ENTER\n\n");
printf("\tDigite uma das opcoes acima: ");
scanf("%f",&i);
system("cls");
}
if (i==000)
{
}
printf("\n\n\n\n\n\n\n\t _-_-_-_-_-_-_-_ Demis Carlos Softawares _-_-_-_-_-_-_-_-_\n\t");
printf(" Cientista da Computacao 63 363-2448 \n\n\t");
printf(" Demis Carlos agradece\n");
printf(" \t____________________________________________________\n");
printf("\n\tRespeite as Ideias alheias nao faca copias ilegais\n");
printf(" \t____________________________________________________\n");
printf(" Pressione qualquer tecla para sair");
getch();
}
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Warcraft II Remastered no Linux? (7)
O programa assinador digital (5)









