my program takes 'n' numbers and gets the average, please help re-writw without using li.s   .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 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    li.s $f0, 0.0 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

Microsoft Visual C#
7th Edition
ISBN:9781337102100
Author:Joyce, Farrell.
Publisher:Joyce, Farrell.
Chapter5: Looping
Section: Chapter Questions
Problem 14E: In Chapter 4, you created a program that generates a random number, allows a user to guess it, and...
icon
Related questions
Question

my program takes 'n' numbers and gets the average, please help re-writw without using li.s

 

.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
    li.s $f0, 0.0

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
Array
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.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
Microsoft Visual C#
Microsoft Visual C#
Computer Science
ISBN:
9781337102100
Author:
Joyce, Farrell.
Publisher:
Cengage Learning,