Turn this Pseudocode into Javascript that is able to run and complete in repl.it
ID: 3679446 • Letter: T
Question
Turn this Pseudocode into Javascript that is able to run and complete in repl.it
Module main()
//Declare local variables
Call declareVariables (endProgram, totalScores, averageScores, score, number, counter)
endProgram = “no” otherwise loop will never execute
//Loop to run program again
While endProgram == “no”
//reset variables
Call declareVariables (endProgram, totalScores, averageScores, score, number, counter)
//calls functions
Call getNumber(number)
Call getScores(totalScores, number, score, counter)
Call getAverage(totalScores, number, averageScores)
Call printAverage(averageScores)
Display “Do you want to end the program? (Enter no to process a new set of test scores )”
Input endProgram
End While
End Module
Module declareVariables(Real Ref endProgram, Real Ref totalScores, Real Ref averageScores, Real Ref score, Integer Ref number, Integer Ref counter)
Declare String endProgram = “no”
Declare Real totalScores = 0.0
Declare Real averageScores = 0.0
Declare Real score = 0
Declare Integer number = 0
Declare Integer counter = 1
End Module
Module getNumber(Integer Ref number)
Display “How many students took the test: ”
Input number
End Module
Module getScores(Real Ref totalScores, Integer number, Real score, Integer counter)
For counter = 1 to number
Display “Enter their score:”
Input score
Set totalScores = totalScores + score
End For
End Module
Module getAverage(Real totalScores, Integer number, Real Ref averageScores)
Set averageScores = totalScores / number
End Module
Module printAverage(Real averageScores)
Display “The average scores is “, averageScores
End Module
Explanation / Answer
Exact javascript code for the above pseudo code is pasted below.
var endProgram;
var totalScores;
var averageScores;
var score;
var number;
var counter;
function main()
{
declareVariables (endProgram, totalScores, averageScores, score, number, counter);
endProgram = 'no';
while(endProgram == 'no')
{
declareVariables (endProgram, totalScores, averageScores, score, number, counter);
getNumber(number);
getScores(totalScores, number, score, counter);
getAverage(totalScores, number, averageScores);
printAverage(averageScores);
endProgram=prompt("Do you want to end the program?Enter no to process a new set of test scores","");
}
}
function printAverage(averageScores)
{
alert("The average scores is"+averageScores);
}
function getAverage(totalScores,number,averageScores)
{
averageScores = totalScores / number;
}
function getScores(totalScores, number,score,counter)
{
var i;
for(i=0;i<number;i++)
{
score=prompt("Enter their score:","");
totalScores = totalScores + score;
}
}
function declareVariables(endProgram, totalScores,averageScores,score, number,counter)
{
endProgram = "no";
totalScores = 0.0;
averageScores = 0.0;
score = 0;
number = 0;
counter = 1;
}
function getNumber(number)
{
number=prompt("How many students took the test:",number);
}
But this code doesn't work.Exact converson of pseudo code won't be functional.So,I made the changes for the code to work and pasted below.
Working code is this:
<script>
var endProgram;
var totalScores;
var averageScores;
var score;
var number;
var counter;
function main()
{
declareVariables ();
endProgram = 'no';
while(endProgram == 'no')
{
declareVariables ();
getNumber();
getScores();
getAverage();
printAverage();
endProgram=prompt("Do you want to end the program?Enter no to process a new set of test scores","");
}
}
function printAverage()
{
alert("The average scores is"+averageScores);
}
function getAverage()
{
averageScores = totalScores / number;
}
function getScores()
{
var i;
for(i=0;i<number;i++)
{
score=+prompt("Enter their score:");
totalScores = totalScores + score;
}
}
function declareVariables()
{
endProgram = "no";
totalScores = 0.0;
averageScores = 0.0;
score = 0;
number = 0;
counter = 1;
}
function getNumber()
{
number=prompt("How many students took the test:",number);
}
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.