forked from LaunchCodeEducation/Candidate-Testing-Autograded
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcandidate-testing.js
More file actions
88 lines (76 loc) · 2.97 KB
/
candidate-testing.js
File metadata and controls
88 lines (76 loc) · 2.97 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
const input = require('readline-sync');
// TODO 2: modify your quiz app to ask 5 questions //
// TODO 1.1a: Define candidateName //
let candidateName = '';
// TODO 1.2a: Define question, correctAnswer, and candidateAnswer //
let question = "Who was the first American woman in space? ";
let correctAnswer = "Sally Ride";
let candidateAnswer = '';
//TODO: Variables for Part 2
let questions = ['Who was the first American woman in space? ', 'True or false: 5 kilometer == 5000 meters? ', '(5 + 3)/2 * 10 = ? ', "Given the array [8, 'Orbit', 'Trajectory', 45], what entry is at index 2? ", 'What is the minimum crew size for the ISS? '];
let correctAnswers = ['Sally Ride', 'true', '40', 'Trajectory', '3'];
let candidateAnswers = [];
function askForName() {
// TODO 1.1b: Ask for candidate's name //
let askName = input.question("Enter name here: ");
candidateName = candidateName + askName;
}
function askQuestion() {
// TODO 1.2b: Ask candidate the question and assign the response as candidateAnswer //
for (let i = 0; i < questions.length; i++) {
askQuestions = input.question(questions[i]).toLowerCase();
candidateAnswers.push(askQuestions);
}
}
function gradeQuiz(candidateAnswers) {
let correct = 0;
// TODO 1.2c: Let the candidate know if they have answered the question correctly or incorrectly //
for (let i = 0; i < questions.length; i++) {
if (candidateAnswers[i].toLowerCase() == correctAnswers[i].toLowerCase()) {
correct = correct + 1;
console.log(`Correct! Your answer: ${candidateAnswers[i]}. Correct answer: ${correctAnswers[i]}.`);
} else {
console.log(`Incorrect! Your answer: ${candidateAnswers[i]}. Correct answer: ${correctAnswers[i]}.`);
}
}
let grade = (correct / questions.length) * 100; //TODO 3.2 use this variable to calculate the candidates score.
if (correct == 0) {
grade;
console.log(`Sorry. You've failed with a ${grade}.`);
} else if (correct == 5) {
grade;
console.log(`Congradulations! You've passed with a ${grade}.`);
} else if (correct == 1) {
grade;
console.log(`Sorry. You've failed with a ${grade}.`);
} else if (correct == 2) {
grade;
console.log(`Sorry. You've failed with a ${grade}.`);
} else if (correct == 3) {
grade;
console.log(`Sorry. You've failed with a ${grade}.`);
} else if (correct == 4) {
grade;
console.log(`Congradulations! You've passed with a ${grade}.`);
}
return grade;
}
function runProgram() {
askForName();
// TODO 1.1c: Greet candidate using their name //
console.log("Hello " + candidateName + "!");
askQuestion();
gradeQuiz(this.candidateAnswers);
}
// ----------- Don't write any code or change any code below this line ---------- //
module.exports = {
candidateName: candidateName,
question: question,
correctAnswer: correctAnswer,
candidateAnswer: candidateAnswer,
questions: questions,
correctAnswers: correctAnswers,
candidateAnswers: candidateAnswers,
gradeQuiz: gradeQuiz,
runProgram: runProgram
};