Answer to Question #273157 in Electrical Engineering for Rahul

Question #273157

Write a verilog code to Initialize a 10 bit number “num” of reg data type with a value 0 (i.e. num=10’b0000000000), now make use of for loop to get the output result as num=10’b001100110011 (Note: It is mandatory to use for loop for getting this output)


1
Expert's answer
2021-11-30T15:00:02-0500

The code is attached below along with output. Comment has been added to the code for explanation, but still if you have any doubts let me know.

PPA8.java:

import java.io.*;

import java.util.Random;

import java.util.Scanner;

public class PPA8{

private static final String evenFileName = "EvenNumOut.txt";

private static final String oddFileName = "OddNumOut.txt";

private static final String primeFileName = "PrimeNumOut.txt";

public static boolean isPrime(int num) {

for (int div =2; div <= num/2; div++) {

if (num % div == 0 ) return false;

} // end of for loop

//if you get here, then num is prime

return true;

} //end of isPrime method

public static void main(String[] args){

//scanner class for taking user input

Scanner scn = new Scanner(System.in);

//open files for writing

PrintWriter evenFileWriter;

PrintWriter oddFileWriter;

PrintWriter primeFileWriter;

//try to open files for writing

try{

evenFileWriter = new PrintWriter(new FileOutputStream(evenFileName), true);

oddFileWriter = new PrintWriter(new FileOutputStream(oddFileName), true);

primeFileWriter = new PrintWriter(new FileOutputStream(primeFileName), true);

}

catch(IOException e){

// Files cannot be opened for writing exceptions are handled

System.out.println("Unable to open files for writing: " + e);

return;

}

//now get input from user

System.out.print("Enter count [400 - 950]: ");

int count = scn.nextInt();

//now if count is not within range

while(count < 400 || count > 950){

System.out.print("Count is out of range. Enter in range [400 - 950]: ");

count = scn.nextInt();

}

//now initalise variables wrt files count

int evenCount = 0;

int oddCount = 0;

int primeCount = 0;

int evenTotal = 0;

int oddTotal = 0;

int primeTotal = 0;

int num;

//create random class object

Random rand = new Random();

//start loop

for(int i = 0; i < count ; i++){

//get a randim number within range of 1000

num = rand.nextInt(1000);

//check if this number is odd

if((num % 2) == 1){

//number is odd

oddCount++;

oddTotal += num;

oddFileWriter.println(num);

}

else{

//number is even

evenCount++;

evenTotal += num;

evenFileWriter.println(num);

}

//now check if number is prime

if(isPrime(num)){

primeCount++;

primeTotal += num;

primeFileWriter.println(num);

}

}

//now calculate average for all three sets

double evenAvg = (double)evenTotal/evenCount;

double oddAvg = (double)oddTotal/oddCount;

double primeAvg = (double)primeTotal/primeCount;

//now output statistics

System.out.println("Number of Odd Numbers: " + oddCount);

System.out.println("Total value of Odd Numbers: " + oddTotal);

System.out.println("Average value of Odd Numbers: " + oddAvg);

System.out.println("Number of Even Numbers: " + evenCount);

System.out.println("Total value of Even Numbers: " + evenTotal);

System.out.println("Average value of Even Numbers: " + evenAvg);

System.out.println("Number of Prime Numbers: " + primeCount);

System.out.println("Total value of Prime Numbers: " + primeTotal);

System.out.println("Average value of Prime Numbers: " + primeAvg);

//close printwriters

oddFileWriter.close();

evenFileWriter.close();

primeFileWriter.close();

}

}


Need a fast expert's response?

Submit order

and get a quick answer at the best price

for any assignment or question with DETAILED EXPLANATIONS!

Comments

No comments. Be the first!

Leave a comment

LATEST TUTORIALS
APPROVED BY CLIENTS