심심해서 만든 바람의나라 종합계산기 – 개발중지



바람의나라를 접게되어 개발 중지 되었습니다.

뭐 심심해서 만들어본 바람의나라 종합계산기다.
공식은 인터넷에 있길래 요즘 학교에서 c도 배우고 있겠다 싶어서 만들어보았다.

흠흠.. 약간 어설픈감이 있긴하다만 그냥저냥 괜찮게 쓸수 있을듯.

소스파일은 다음과 같다. (혹시 읽기 불편하신분은 첨부파일 참고)

#include <stdio.h>
#include <math.h>

int def,cont,select,mleft,vtype;
float dcalc,fst_flr,snd_flr,thd_flr,health,mana,clr_flr,calcsum,exresult,excalc,extime,tdiv;
long damre,dam = 1000000;

int main () {
system(“cls”);
printf(“tt바람의나라 종합 계산기 by 혈폭사신(Xeriars) – Ver 0.1bnnnn”);
mainm:
printf(“[1] 방어력 계산기n”);
printf(“[2] 천명 경험치 계산기n”);
printf(“[3] 공성 경험치 계산기n”);
printf(“[4] 비율 계산기n”);
printf(“[0] 종료nn”);
printf(“사용하시려는 계산기 번호를 입력하세요. : “);
scanf(“%d”, &select);
selectob:
// 방어력 계산기
if (select == 1) {
system(“cls”);
printf(“[1] 방어력 계산기nn”);
input:
printf(“현재방어력을 입력하여 주십시요. : “);
scanf(“%d”, &def);
if (def > 200 || def < -200) {
printf(“입력범위를 초과하셨습니다. 범위는 -200 ~ +200까지 입니다.n”);
goto input;
}

dcalc = 100 – pow((double)(def + 200) / 20,2);
damre = dam – (dam * (dcalc / 100));

printf(“방어력이 %d일때는 %f%의 감소율이 생기며n”, def, dcalc);
printf(“데미지 %ld을 받았을때 %ld만큼의 데미지만 받습니다.n”, dam, damre);
goto checkcon;
}
if (select == 2)
{
system(“cls”);
printf(“[2] 천명 경험치 계산기nn”);
recalc:
printf(“현재 체력을 입력하여 주십시요. : “);
scanf(“%f”, &health);
printf(“현재 마력을 입력하여 주십시요. : “);
scanf(“%f”, &mana);
if ((health + mana*2) > 6150000 || (health + mana*2) < 0 )
{
printf(“계산할수 있는 입력범위를 초과하셨습니다. 다시 입력하여 주십시오.n”);
goto recalc;
}
printf(“체력 : %ld 마력 : %ldn”, (long)health, (long)mana);
fst_flr = (health * 2 + mana * 3.4) * 4 * 16;
snd_flr = (health * 2 + mana * 3.4) * 8 * 16;
thd_flr = (health * 2 + mana * 3.4) * 12 * 16;
clr_flr = (health * 2 + mana * 3.4) * 250;
calcsum = (fst_flr + snd_flr + thd_flr + clr_flr) / 100000000;
printf(“첫번째 스테이지 클리어시 %ld의 경험치를 받고n”, (long)fst_flr);
printf(“두번째 스테이지 클리어시 %ld의 경험치를 받고n”, (long)snd_flr);
printf(“세번째 스테이지 클리어시 %ld의 경험치를 받고n”, (long)thd_flr);
printf(“천명 퀘스트 클리어시 %.0lf의 추가경험치를 받아n”, (double)clr_flr);
printf(“총 %f억의 경험치를 얻습니다.n”, calcsum);
goto checkcon;
}
if (select == 3)
{
system(“cls”);
printf(“[3] 공성 경험치 계산기nn”);
recal:
printf(“현재 체력을 입력하여 주십시요. : “);
scanf(“%f”, &health);
printf(“현재 마력을 입력하여 주십시요. : “);
scanf(“%f”, &mana);
if ((health + mana*2) > 6150000 || (health + mana*2) < 0 )
{
printf(“계산할수 있는 입력범위를 초과하셨습니다. 다시 입력하여 주십시오.n”);
goto recal;
}
rein:
printf(“탁조,연노차,발석차인경우 1, 충차인경우 2를 입력하여 주십시오. : “);
scanf(“%d”, &vtype);
if (vtype != 1 && vtype != 2)
{
printf(“입력이 올바르지 않습니다.n”);
}
printf(“몇분동안 공성경험치를 얻을것인지 입력하여 주십시오. : “);
scanf(“%d”, &mleft);
printf(“몇초당 한발을 쏘실것인지 입력하여 주십시오. (소수입력가능) : “);
scanf(“%f”, &tdiv);
printf(“체력 : %ld 마력 : %ldn”, (long)health, (long)mana);
extime = mleft * 60;
if (vtype == 1) {
excalc = (health * 2 + mana * 3.4);
exresult = (excalc * (extime / tdiv)) / 100000000;
printf(“탁조,연노차,발석차인경우 한발당 %.0f의 경험치를 얻으며n”, excalc);
printf(“%d분동안 돌릴시 총 경험치는 %.0f억의 경험치를 얻습니다. n”, mleft, exresult);
goto checkcon;
}
if (vtype == 2) {
excalc = (health * 2 + mana * 3.4) * 2;
exresult = (excalc * (extime / tdiv)) / 100000000 ;
printf(“충차인경우 한발당 %.0f의 경험치를 얻으며n”, excalc);
printf(“%d분동안 돌릴시 총 경험치는 %.0f억의 경험치를 얻습니다. n”, mleft, exresult);
goto checkcon;
}
}
if (select == 4)
{
int contype,cratio,cash;
float cratio2,cashre;
printf(“[4] 비율 계산기nn”);
retype:
printf(“바돈 → 캐시 환산은 1번, 캐시 → 바돈 환산은 2번을 입력하여 주십시오 : “);
scanf(“%d”, &contype);
if (contype != 1 && contype != 2)
{
printf(“입력이 올바르지 않습니다.n”);
goto retype;
}
if (contype == 1)
{
printf(“캐시로 환산할 바돈금액을 입력하여 주십시오. : “);
scanf(“%d”, &cash);
printf(“바돈비율1을 입력하여 주십시오. (300:1.1이면 300입력) : “);
scanf(“%d”, &cratio);
printf(“바돈비율2을 입력하여 주십시오. (300:1.1이면 1.1입력, 소수입력가능) : “);
scanf(“%f”, &cratio2);
cashre = (cash * cratio2) / cratio;
printf(“바돈가격이 %d원이고 비율이%d:%.2f 일때n” ,cash,cratio,cratio2);
printf(“캐시로 환산하면 %.0f전 입니다.n” ,cashre);
goto checkcon;
}
if (contype == 2)
{
printf(“바돈으로 환산할 캐시금액을 입력하여 주십시오. : “);
scanf(“%d”, &cash);
printf(“캐시비율1을 입력하여 주십시오. (300:1.1이면 300입력) : “);
scanf(“%d”, &cratio);
printf(“캐시비율2을 입력하여 주십시오. (300:1.1이면 1.1입력) : “);
scanf(“%f”, &cratio2);
cashre = cash * cratio / cratio2;
printf(“캐시가격이 %d원이고 비율이%d:%.02f 일때n” ,cash,cratio,cratio2);
printf(“바돈으로 환산하면 %.0f전 입니다.n” ,cashre);
goto checkcon;
}
}
if (select == 0)
{
goto eof;
}
else { printf(“입력하신 번호가 올바르지 않습니다.n”);
goto mainm;
}
checkcon:
printf(“계속 계산 하시려면 1, 메인메뉴는 9, 종료는 0번을 입력하세요. : “);
scanf(“%d”, &cont);
if (cont == 1) { goto selectob; }
if (cont == 9) { goto mainm; }
if (cont == 0) { goto eof; }
if (cont != 1 && cont != 9 && cont != 0) {
printf(“입력하신 번호가 올바르지 않습니다.n”);
goto checkcon;
}
eof:
printf(“nn** 이용하여 주셔서 감사합니다! ** n”);
return 0;
}

댓글 남기기