hi
Counting a sequence of statements without any decisions or branches as one control structure (as many computer scientists do),the if, if-else, and if-else-if ladders as one control structure,the three types of loops (while, do-while, and for) as three different control structures,the break and continue statements, in the context of loops, as one more (although this can be debatable),the switch/case control structure as one,the call/return mechanism as one,the ability to specify and call a callback function as one,the goto/label as one,and the setjmp/longjmp non-local goto as one,
Answer:
Description: Write a MASM 32bit program with a loop and indexed addressing that calculates the sum of all thegaps between successive array elements. The array elements are doublewords, sequenced in nondecreasing order.
;Include Irvine32.inc file used with link library for 32 bit applications
.386
.model flat,stdcall
.stack 4096
ExitProcess proto,dwExitCode:dword
INCLUDE Irvine32.inc
.data
myArray DWORD 0,2,5,9,10
arrSize = ($-myArray)/TYPE myArray
gapArr DWORD arrSize-1 DUP(?)
sum DWORD ?
.code
main PROC
;Call the procedure
call Clrscr
;Initialize ESI pointer
mov esi, 0
mov ecx, arrSize
dec ecx
L1:
mov eax, myArray[esi+4]
sub eax, myArray[esi]
mov gapArr[esi], eax
inc esi
loop L1
;Calculate the sum of gaps between array elements
mov sum, 0
mov esi, 0
mov ecx, arrSize
dec ecx
; move gapArr[esi] to a temporary register and then add that register value to sum
L2:
mov edx, gapArr[esi]
add sum, edx
inc esi
loop L2
INVOKE ExitProcess,0
main ENDP
END main
Explanation:
Answer:
#include <iostream>
#include<iomanip>
using namespace std;
double DrivingCost(double drivenMiles, double milesPerGallon, double dollarsPerGallon)
{
double dollarCost = 0;
dollarCost = (dollarsPerGallon * drivenMiles) / milesPerGallon;
return dollarCost;
}
int main()
{
double miles = 0;
double dollars = 0;
cout << "Enter miles per Gallon : ";
cin >> miles;
cout << "Enter dollars per Gallon: ";
cin >> dollars;
cout << fixed << setprecision(2);
cout << endl;
cout << "Gas cost for 10 miles : " << DrivingCost(10, miles, dollars) << endl;
cout << "Gas cost for 50 miles : " <<DrivingCost(50, miles, dollars) << endl;
cout << "Gas cost for 400 miles: "<<DrivingCost(400, miles, dollars) << endl;
return 0;
}
Explanation:
- Create a method definition of DrivingCost that accepts three input double data type parameters drivenMiles, milesPerGallon, and dollarsPerGallon and returns the dollar cost to drive those miles
.
- Calculate total dollar cost and store in the variable, dollarCost
.
- Prompt and read the miles and dollars per gallon as input from the user
.
- Call the DrivingCost function three times for the output to the gas cost for 10 miles, 50 miles, and 400 miles.