diff --git a/src/controller/PersonalityViewController.java b/src/controller/PersonalityViewController.java index 169fd48..cd10763 100644 --- a/src/controller/PersonalityViewController.java +++ b/src/controller/PersonalityViewController.java @@ -1,4 +1,4 @@ -package controller; + package controller; import java.io.IOException; @@ -8,8 +8,8 @@ import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import service.PersonalityCalculator; +import service.PersonalityCalculator; @WebServlet(urlPatterns= {"/personality"}) @@ -30,12 +30,18 @@ protected void doGet(HttpServletRequest request, HttpServletResponse response) t protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { + + String options=request.getParameter("selectedOptions"); + PersonalityCalculator personality = new PersonalityCalculator(); + + String message = personality.findYourBrainType(options); + System.out.println(options); - PersonalityCalculator obj= new PersonalityCalculator(); - String message= obj.findYourBrainType(options); + + + request.setAttribute("message", message); - System.out.println("You are "+message); if(message!=null) { diff --git a/src/service/PersonalityCalculator.java b/src/service/PersonalityCalculator.java index ec8651c..71742c6 100644 --- a/src/service/PersonalityCalculator.java +++ b/src/service/PersonalityCalculator.java @@ -1,52 +1,34 @@ package service; - -// Create a class called PersonalityCalculator -// PersonalityCalculator has two methods findAnswers and findYourBrainType -// int[] findAnswers(String options) and String findYourBrainType(String options) is the method prototype -// findAnswer() accepts String as an argument and returns integer array as an output -// findYourBrainType accepts String as an argument and returns String as an output -// option is a string which contains all the options selected as a string -// Use the split method to segregate the options and store it in a string array. -// Convert the string array into an integer array. -// return the entire integer array to findyourBrainType - -public class PersonalityCalculator -{ - public int[] findAnswers(String options) - { - - String c[]=options.split(","); - int n=c.length; - int a[]=new int[n]; - int sum=0,count=1; - for(int i=0;i<=n-1;i++) - { - a[i]=Integer.parseInt(c[i]); - count=count+i; - System.out.println("The answer for question - "+count+" is "+a[i]+"."); - } +public class PersonalityCalculator{ + + public String findYourBrainType(String options) { - return a; - } - - public String findYourBrainType(String options) - { - int value[]=findAnswers(options); - int n=value.length; - int a=value[0]+value[1]+value[2]+value[4]+value[7]+value[9]+value[10]+value[11]+value[13]+value[17]+value[19]; - int b=value[3]+value[5]+value[6]+value[8]+value[12]+value[14]+value[15]+value[16]+value[18]; - int sum=66-a+b; - System.out.println("Your total score is "+sum+"."); - if((sum>=22)&&(sum<=55)) + int[] answers = findPersonality(options); + + int A=0, B=0; + A=answers[0]+answers[1]+answers[2]+answers[4]+answers[7]+answers[9]+answers[10]+answers[11]+answers[13]+answers[17]+answers[19]; + B=answers[3]+answers[5]+answers[6]+answers[8]+answers[12]+answers[14]+answers[15]+answers[16]+answers[18]; + int x = 66-A+B; + + if(x>=22 && x<=55) return "leftbrained"; - if((sum>=56)&&(sum<=64)) - return "No clear preference"; - if((sum>=65)&&(sum<=100)) - return "rightbrained"; + else if(x>=56 && x<=64) + return "noclearpreference"; else - return "false"; - - } -} + return "rightbrained"; + } + public int[] findPersonality(String options) { + + String[] choiceAnswer = options.split(","); + int[] answer = new int[choiceAnswer.length]; + for(int i=0;i