help please the code is not returning the correct average value, I think the result that gets  printed does not hold the right value. .dataprompt1: .asciiz "Enter the number of real numbers: "prompt2: .asciiz "Enter a real number: "result:  .asciiz "The average is: " .text.globl mainmain:# Prompt for the number of real numbersli $v0, 4la $a0, prompt1syscall li $v0, 5 # Read integer (n)syscallmove $t0, $v0 # Store number in $t0move $t1, $zero # Counter # Initialize floating-point sum to 0.0mtc1 $zero, $f0 # Move zero to $f0cvt.s.w $f0, $f0 # Convert to float input_loop:beq $t1, $t0, calculate # Exit loop # Prompt and read each real numberli $v0, 4la $a0, prompt2syscall li $v0, 6 # Read floatsyscall add.s $f0, $f0, $f12 # Add float to sum addi $t1, $t1, 1 # Increment counterj input_loop calculate:# Calculate averagemtc1 $t0, $f2 # Move count to $f2cvt.s.w $f2, $f2 # Convert to floatdiv.s $f4, $f0, $f2 # Divide sum by count # Print resultli $v0, 4la $a0, resultsyscall mov.s $f12, $f4 # Move average to $f12li $v0, 2 # Print floatsyscall # Exitli $v0, 10syscall

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

help please the code is not returning the correct average value, I think the result that gets  printed does not hold the right value.

.data
prompt1: .asciiz "Enter the number of real numbers: "
prompt2: .asciiz "Enter a real number: "
result:  .asciiz "The average is: "

.text
.globl main
main:
# Prompt for the number of real numbers
li $v0, 4
la $a0, prompt1
syscall

li $v0, 5 # Read integer (n)
syscall
move $t0, $v0 # Store number in $t0
move $t1, $zero # Counter

# Initialize floating-point sum to 0.0
mtc1 $zero, $f0 # Move zero to $f0
cvt.s.w $f0, $f0 # Convert to float

input_loop:
beq $t1, $t0, calculate # Exit loop

# Prompt and read each real number
li $v0, 4
la $a0, prompt2
syscall

li $v0, 6 # Read float
syscall

add.s $f0, $f0, $f12 # Add float to sum

addi $t1, $t1, 1 # Increment counter
j input_loop

calculate:
# Calculate average
mtc1 $t0, $f2 # Move count to $f2
cvt.s.w $f2, $f2 # Convert to float
div.s $f4, $f0, $f2 # Divide sum by count

# Print result
li $v0, 4
la $a0, result
syscall

mov.s $f12, $f4 # Move average to $f12
li $v0, 2 # Print float
syscall

# Exit
li $v0, 10
syscall

AI-Generated Solution
AI-generated content may present inaccurate or offensive content that does not represent bartleby’s views.
steps

Unlock instant AI solutions

Tap the button
to generate a solution

Knowledge Booster
C-string
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education