Last Updated on 14 years by Mas Herdi
Ini sebenarnya sudah mudah. Apa yang saya katakan mudah adalah nyata, karena kita hanya diminta untuk menghitung sebuah fungsi kuadrat, dimana semua variabelnya telah diketahui, berbeda dengan mencari nilai x, pada suatu persamaan kuadrat ax^2 + bx + c.
persku.asm
.data teks1:.asciiz "Nilai A : " teks2:.asciiz "Nilai B : " teks3:.asciiz "Nilai C : " teks4:.asciiz "Nilai X : " teks5:.asciiz "Nilai dari f(" teks6:.asciiz ") untuk persamaan f(x) = " teks7:.asciiz "X^2 + " teks8:.asciiz "X + " teks9:.asciiz " = " .text .globl main main : la $a0, teks1 #print teks1 li $v0, 4 syscall li $v0, 5 #baca input integer masukkan ke $t0 syscall move $t0, $v0 la $a0, teks2 #print teks2 li $v0, 4 syscall li $v0, 5 #baca input integer untuk $t1 syscall move $t1, $v0 la $a0, teks3 #print teks3 li $v0, 4 syscall li $v0, 5 #baca input integer untuk t2 syscall move $t2, $v0 la $a0, teks4 #print teks4 li $v0, 4 syscall li $v0, 5 #baca input integer untuk t3 syscall move $t3, $v0 mul $t4, $t3, $t3 # X^2 finish mul $t5, $t0, $t4 # A*X^2kuadrat finish mul $t6, $t1, $t3 # B*X finish add $t7, $t5, $t6 # A*X^2 + B*X finish add $t7, $t7, $t2 # A*X^2 + B*X + C finish la $a0, teks5 #print teks5 li $v0, 4 syscall move $a0, $t3 #print t3 li $v0, 1 syscall la $a0, teks6 #print teks6 li $v0, 4 syscall move $a0, $t0 #print t0 li $v0, 1 syscall la $a0, teks7 #print teks7 li $v0, 4 syscall move $a0, $t1 #print t1 li $v0, 1 syscall la $a0, teks8 #print teks8 li $v0, 4 syscall move $a0, $t2 #print t2 li $v0, 1 syscall la $a0, teks9 #print teks9 li $v0, 4 syscall move $a0, $t7 #print t7 li $v0, 1 syscall jr$ra #jumpAroundReturnAddress
Inilah file main.cpp kali ini saya ingin menggunakan c++ just in case agar saya sedikit ingat kembali soal c++ 🙂
/* * File: main.cpp * Author: Herdi Naufal * * Created on May 12, 2011, 10:14 PM */ #include <cstdlib> #include <stdio.h> #include <iostream> using namespace std; /* * */ float count(int x, int a, int b, int c) { float hasil; hasil = a * x * x + b * x + c; return hasil; } void start() { int a,b,c,x; float result; cout<<"Nilai A : "; cin>> a; cout<<"Nilai B : "; cin>> b; cout<<"Nilai C : "; cin>>c; cout<<"Nilai X : "; cin>>x; result = count(x,a,b,c); cout.setf(ios::fixed, ios::floatfield); cout.precision(0); cout<<"Nilai dari f("<<x<<") untuk persamaan f(x) = "<<a<<"X^2 + "<<b<<"X + "<<c<<" = "<<result; } int main(int argc, char** argv) { start(); return 0; }