본문 바로가기

C언어

함께 만드는 코딩 #1 - MBTI 성격검사 테스트

헤더파일

#define _CRT_SECURE_NO_WARNINGS


#include <cstdio>
#include <cstdlib>
#include <cmath>
#include <ctime>
#include <cstring>


// 질문 + 강한부정 -3 약한부정 -1 약한긍정 1 강한긍정 3
// 값을 입력 받는 걸 함수로 만들기
// 함수를 2개 만들어야할듯 -3 -1 1 3 이랑 3 1 -1 -3 두가지 경우


// case로 각 항목 별로 구분하여 각 항목의 더한 값을 I/E 인지 구분하여 출력 if 쓰면될듯


// 결과들을 조합해야겠다 배열로 하는게 베스트일듯


int myInput();
int myScore();
int myScore2();
char myMbti();

 

#include "prc.hpp"
// MBTI
// I E
// S N
// T F
// J P


int main(){
    
    int score_I_E = 0; // 내향, 외향
    int score_S_N = 0; // 감각, 직관
    int score_T_F = 0; // 사고, 감성
    int score_J_P = 0; // 판단, 인식
    int score = 0;
    int input;
    char result[5];
    
    
    printf("MBTI 검사를 시작합니다. 응답해주세요. \n");
    printf("\n");
    printf("나는 처음 보는 사람에게 자신을 소개하는 것이 두렵지 않다.\n ");
    myScore();
    score_I_E = score_I_E + myInput();
    
    printf("내가 스트레스를 푸는 방법은 사람들을 만나는 것 이다. \n");
    myScore();
    score_I_E = score_I_E + myInput();
    
    printf("대화를 시작하기보다 맞장구 치는걸 좋아한다. \n");
    myScore2();
    score_I_E = score_I_E + myInput();
    
    printf("술자리에서 노는것 보다 집에서 게임하는게 좋다. \n");
    myScore2();
    score_I_E = score_I_E + myInput();
    
    if(score_I_E >= 0){
        result[0] = 'E';
    }
    else{
        result[0] = 'I';
    }
    printf("\n");
    
    printf("업무를 하거나 과제를 할때 계획을 먼저 세운다\n ");
    myScore();
    score_S_N = score_S_N + myInput();
    
    printf("가끔 번뜩이는 아이디어가 생각나 메모를 하곤 한다.\n ");
    myScore();
    score_S_N = score_S_N + myInput();
    
    printf("가끔 비현실적인 망상을 하는 편 이다.\n ");
    myScore();
    score_S_N = score_S_N + myInput();
    
    printf("나는 내성적인 편이다.\n ");
    myScore();
    score_S_N = score_S_N + myInput();
    
    if(score_S_N >= 0){
        result[1] = 'N';
    }
    else{
        result[1] = 'S';
    }
    printf("\n");
    
    printf("상대방의 고민을 들어줄 때 원인을 찾기보다 공감을 해주는 편 이다.\n ");
    myScore();
    score_T_F = score_T_F + myInput();
    
    printf("어떤 이유에서건 상대방의 기분을 먼저 생각해야 한다.\n ");
    myScore();
    score_T_F = score_T_F + myInput();
    
    printf("다른 사람들이 나를 어떻게 생각하는지 지나치게 생각한다.\n ");
    myScore();
    score_T_F = score_T_F + myInput();
    
    printf("영화나 드라마가 뮤지컬이나 예술작품보다 더 많은 영감을 준다.\n ");
    myScore2();
    score_T_F = score_T_F + myInput();
   
    if(score_T_F >= 0){
        result[2] = 'F';
    }
    else{
        result[2] = 'F';
    }
    printf("\n");
    
    printf("방 정리가 되어있지 않으면 일을 시작할 수 없다.\n ");
    myScore2();
    score_J_P = score_J_P + myInput();
    
    printf("과제나 업무는 최대한 미루었다가 한꺼번에 하는 편이다.\n ");
    myScore();
    score_J_P = score_J_P + myInput();
    
    printf("호기심은 나를 움직이는 원동력이다.\n ");
    myScore();
    score_J_P = score_J_P + myInput();
    
    printf("프리랜서가 회사원보다 더 나은 삶을 살고 있다고 생각한다.\n ");
    myScore();
    score_J_P = score_J_P + myInput();
    
    if(score_J_P >= 0){
        result[3] = 'P';
    }
    else{
        result[3] = 'J';
    }
    
    result[4] = '\0';
    
    printf("\n");
    
    
    if (strcmp(result, "ISTJ") == 0){
            printf (" ISTJ\n당신은 논리주의자 입니다. 사실에 대하여 정확하고 체계적으로 기억하며 신중하고 책임감이 있습니다.\n인물: 퓨디파이");
    }
    if (strcmp(result, "ISFJ") == 0){
            printf (" ISFJ\n당신은 조용하고 차분하며 친근합니다. 가장 믿음직스러운 사람입니다.\n인물 : 태연(가수)");
    }
    if (strcmp(result, "INFJ") == 0){
            printf (" INFJ\n당신은 인내심이 많고 사람들을 좋아합니다. 눈치가 빠르고 영감이 있습니다.\n인물 : J.K. 롤링(해리포터 작가)");
    }
    if (strcmp(result, "INTJ") == 0){
            printf (" INTJ\n당신은 논리적이고 효율성을 중시하는 냉철한 사람입니다.\n인물 : 진용진(유튜버)");
    }
    if (strcmp(result, "ISTP") == 0){
            printf (" ISTP\n조용하고 과묵하고 손재주가 있는 공학자 스타일 입니다\n인물 : 박명수(연예인)");
    }
    if (strcmp(result, "ISFP") == 0){
            printf (" ISFP\n다정하고 착하고 상대방에 대한 배려심이 많습니다. 주위 사람들에게 많이 휩쓸리는 성격입니다\n인물: 정국(가수, BTS)");
    }
    if (strcmp(result, "INFP") == 0){
            printf (" INFP\n당신은 정열적이고 완벽을 추구하며 유토피아를 추구하는 성격입니다.\n인물: 셰익스피어(작가)");
    }
    if (strcmp(result, "INTP") == 0){
            printf (" INTP\n당신은 조용하고 과묵하며 상상을 즐기는 사색가 입니다. 사회성이 부족하다는 말을 많이 듣습니다.\n인물: 아인슈타인(과학자)");
    }
    if (strcmp(result, "ESTP") == 0){
            printf (" ESTP\n당신은 활동하는 것을 좋아하는 사업가형 입니다.\n인물: 존 F 케네디(미국의 전 대통령)");
    }
    if (strcmp(result, "ESFP") == 0){
            printf (" ESFP\n당신은 자유로운 영혼을 갖고있는 연예인 스타일입니다.\n인물: 비(가수)");
    }
    if (strcmp(result, "ENFP") == 0){
            printf (" ENFP\n당신은 넘치는 상상력을 바탕으로 항상 새로운 가능성을 찾아보는 탐험가입니다.\n인물: 대도서관(유튜버, 방송인)");
    }
    if (strcmp(result, "ENTP") == 0){
            printf (" ENTP\n당신은 논쟁을 즐기며 사람을 만나는 것을 좋아합니다.\n인물: 서새봄(스트리머)");
    }
    if (strcmp(result, "ESTJ") == 0){
            printf (" ESTJ\n현실적 구체적이고 사실적이며 조직을 이끌어나가는 리더형 입니다.\n인물: 허경영(정치인)");
    }
    if (strcmp(result, "ESFJ") == 0){
            printf (" ESFJ\n동정심이 많고 다른 사람에게 관심을 주는 것을 좋아하며 협력을 조항하고 동료애가 끈끈합니다\n인물: 김남주(가수)");
    }
    if (strcmp(result, "ENFJ") == 0){
            printf (" ENFJ\n당신은 따뜻하고 적극적이며 사교성이 풍부하고 이타적입니다.\n인물: 신세경(연예인)");
    }
    if (strcmp(result, "ENTJ") == 0){
            printf (" ENTJ\n당신은 열정적이며 솔직하고 지도력과 통솔력이 있습니다. 활동적이고 장기적인 계획을 좋아합니다.\n인물: 고든 램지(요리인, 방송인)");
    }
     
    return 0;
}


int myInput(){
    int input;
    fseek(stdin, 0, SEEK_END);
    printf("점수를 입력하세요 : ");
    scanf("%d", &input);
    printf("\n");
    return input;
};
int myScore(){
    printf("질문답 강한부정 -3 약한부정 -1 약한긍정 1 강한긍정 3 입력하세요\n");
    return 0;
};
int myScore2(){
    printf("질문답 강한부정 3 약한부정 1 약한긍정 -1 강한긍정 -3 입력하세요\n");
    return 0;
};