Search This Blog

Thursday, January 19, 2017

How to Calculate the Future Investment Value of Investment.

Below java program for calculate future investment value.
Here calculate s using the formula futureInvestmentValue =investmentAmount x (1 + monthlyInterestRate)^numberOfYears*12.

Output: 





Java code here.

package swain.swain;

import java.util.Scanner;

public class CalculateFutureInvestmentValue {
    public static void main(String[] args) {

         Scanner input = new Scanner(System.in);

         System.out.println("Enter investment amount:");
         double investmentAmount = input.nextDouble();
         System.out.println("Enter annual interest rate in percentage:");
         double monthlyInterestRate = input.nextDouble();
         System.out.println("Enter number of years:");
         double numberOfYears = input.nextDouble();
         double futureInvestmentValue = investmentAmount * Math.pow((1 + (monthlyInterestRate / 1200)), (numberOfYears * 12));
         futureInvestmentValue = (int) (futureInvestmentValue * 100) / 100.0;
         System.out.println("Accumulated value is " + futureInvestmentValue + "\n");
    }
}


Oracle JRE will no longer trust MD5-signed code by default




Beginning with the April 2017 Critical Patch Update, JAR files signed using MD5 will no longer be considered as signed by the Oracle JRE.  Affected MD5-signed JAR files will no longer be considered trusted and as a result will not be able to run by default, such as in the case of Java applets, or Java Web Start applications.
This change in the JRE behavior is required because MD5 is no longer considered secure and is widely considered unsuitable for security use.  In fact, the MD5 with RSA algorithm stopped being the default JAR signing option with Java SE 6 released back in 2006.  It is critical that weak hashing algorithms (such as MD5) be deprecated when they are known to be weak so as to maintain the trust in the verification mechanism they provide.  
This change affecting MD5-signed JARS will be enabled by default no sooner than with Oracle Java SE 8u131 which will be released with the April 2017 Critical Patch Update, as well as in the corresponding releases of Oracle Java SE 7, Oracle Java SE 6 and Oracle JRockit R28, which will be available to qualified customers through My Oracle Support.
In order to prepare for this upcoming change, developers need to verify that their JAR files have not been signed using MD5.  You can do this with your own JARs by verifying your build process signs JARs using Java 6 or later without having deliberately chosen MD5.  If you are using JARS you did not sign or build yourself, you need to contact your vendor for more information.  If it can no longer be established if a JAR you are using has been signed with MD5, the recommended practice is to re-sign affected JAR files using a more modern algorithm.  Be sure to remove any existing MD5 signatures first before re-signing using the zip utility as follows:
zip -d test.jar 'META-INF/*.SF' 'META-INF/*.RSA' 'META-INF/*.DSA'
More technical information can be found in the October 2016 Critical Patch Update Release Notes for Java SE.
Oracle has already informed a number of software vendors, including source licensees, of the upcoming changes.  Users concerned about the effect of this change on third party applications should contact their respective vendor.
Cryptography is a dynamic field.  In order to keep users and developers informed about upcoming changes in this area, Oracle has recently published a new web page at java.com/cryptoroadmap.  This page provides information about upcoming cryptographic changes in Oracle JRE and Oracle JDK, and related technical instructions.


Apache FileUtils Examples.

Apache FileUtils Examples.



General file manipulation utilities.

Facilities are provided in the following areas:

1      Writing to a file.
2      Reading from a file.
3   Make a directory including parent directories.
4   Copying files and directories.
5     Deleting files and directories.
6   Converting to and from a URL.
7      Listing files and directories by filter and extension.
8   Comparing file content.
9    File last changed date.
1    Calculating a checksum.

Maven Repository
                <dependency>
                                                <groupId>commons-io</groupId>
                                                <artifactId>commons-io</artifactId>
                                                <version>2.4</version>
                                </dependency>

Examples.
package swain.swain;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;

import org.apache.commons.io.FileUtils;
import org.apache.commons.io.LineIterator;
import org.apache.commons.io.filefilter.SuffixFileFilter;

public class ApacheFileUtilsExample {

    private static final String PATH = "C:\\appdata\\";

    public static void main(String[] args) throws IOException {

         String fileString = FileUtils.readFileToString(new File(PATH + "file1.txt"));
         System.out.println("Reading file content:" + fileString);
         String fileString2 = FileUtils.readFileToString(new File(PATH + "file2.txt"));
         System.out.println("Reading content:" + fileString2);
         File file1 = new File(PATH + "file1.txt");
         File file2 = new File(PATH + "file2.txt");
         System.out.println("Comparing file content: " + FileUtils.contentEquals(file1, file2));

         FileUtils.copyDirectory(FileUtils.getFile(PATH), FileUtils.getFile(PATH + "copiedNewPath\\"));

         FileUtils.copyDirectory(FileUtils.getFile(PATH), FileUtils.getFile(PATH + "copiedFilterPath\\"), new SuffixFileFilter(".txt"));

         for (File f : FileUtils.getFile(PATH + "copiedFilterPath\\").listFiles()) {
             System.out.println("Contents of copiedFilterPath: " + f.getName());
         }

         File copy = FileUtils.getFile(PATH + "test1.txt");
         FileUtils.copyFile(file1, copy);
         System.out.println("Comparing file content:: " + FileUtils.contentEquals(file1, copy));

         for (File file : FileUtils.getFile(PATH).listFiles()) {
             System.out.println("File Name: " + file.getName());
         }

         FileUtils.deleteDirectory(FileUtils.getFile(PATH + "copiedFilterPath\\"));
         for (File file : FileUtils.getFile(PATH).listFiles()) {
             System.out.println("Contents of PATH after deletion: " + file.getName());
         }

         // Directories
         System.out.println("Temp Dir: " + FileUtils.getTempDirectory().getAbsolutePath());
         System.out.println("User Dir: " + FileUtils.getUserDirectory().getAbsolutePath());

         // Line Iterator
         LineIterator iter = FileUtils.lineIterator(file1);
         while (iter.hasNext()) {
             System.out.println("cmpFile1 lines: " + iter.next());
         }

         // Directory size
         System.out.println("Size of dir: " + FileUtils.sizeOfDirectory(FileUtils.getFile(PATH)) + " bytes.");

         // Ways of writing lines to a file.
         File fileToWrite1 = FileUtils.getFile(PATH + "file1.txt");
         File fileToWrite2 = FileUtils.getFile(PATH + "file2.txt");

         Collection<String> lines = new ArrayList<String>();
         lines.add("Hello world");
         lines.add("First Line");

         FileUtils.write(fileToWrite1, "Written with FileUtils!");
         FileUtils.writeLines(fileToWrite2, lines);

    }
}




Wednesday, January 18, 2017

Java Program: Print Pattern with star java example


To find out multiple example of star print pattern.


Output:



Java code.

package swain.swain;

public class PrintPattern {
public static void example1() {
int space = 0;
for (int i = 5; i >= 1; i--) {
// print first part of the row
for (int j = i; j >= 1; j--)
System.out.print("*");

// print space
for (int j = 1; j <= space; j++)
System.out.print(" ");

// print second part of the row
for (int j = i; j >= 1; j--)
System.out.print("*");

// print new lint
System.out.println();
space = space + 2;
}

space = 8;
for (int i = 1; i <= 5; i++) {
// print first part of the row
for (int j = 1; j <= i; j++)
System.out.print("*");

// print space
for (int j = 1; j <= space; j++)
System.out.print(" ");

// print second part of the row
for (int j = 1; j <= i; j++)
System.out.print("*");

// print new lint
System.out.println();
space = space - 2;
}
}

public static void example2() {
int space = 0;
for (int i = 5; i >= 1; i--) {
// print first part of the row
for (int j = i; j >= 1; j--)
System.out.print("*");

// print space
for (int j = 1; j <= space; j++)
System.out.print(" ");

// print second part of the row
for (int j = i; j >= 1; j--)
System.out.print("*");

// print new lint
System.out.println();
space = space + 2;

}
}

public static void example3() {
int space = 8;
for (int i = 1; i <= 5; i++) {
// print first part of the row
for (int j = 1; j <= i; j++)
System.out.print("*");

// print space
for (int j = 1; j <= space; j++)
System.out.print(" ");

// print second part of the row
for (int j = 1; j <= i; j++)
System.out.print("*");

// print new lint
System.out.println();
space = space - 2;
}
}

public static void example4() {
int space = 0;
for (int i = 5; i >= 1; i--) {
// print spaces
for (int j = 1; j <= space; j++)
System.out.print(" ");

// print stars
for (int j = 1; j <= i; j++)
System.out.print("* ");

// print new line
System.out.println();
space++;

}
}

public static void example5() {
int space = 4;
for (int i = 1; i <= 5; i++) {
// print spaces
for (int j = 1; j <= space; j++)
System.out.print(" ");

// print stars
for (int j = 1; j <= i; j++)
System.out.print("* ");

// print new line
System.out.println();
space--;

}
}

public static void main(String args[]) {
System.out.println("Example 1");
PrintPattern.example1();
System.out.println("Example 2");
PrintPattern.example2();
System.out.println("Example 3");
PrintPattern.example3();
System.out.println("Example 4");
PrintPattern.example4();
System.out.println("Example 5");
PrintPattern.example5();
}
}

Thursday, January 12, 2017

Java Program: Basal Metabolic Rate (BMR) Calculator .

Basal metabolic rate (BMR), is the rate of metabolism that occurs when an individual is at rest in a warm environment and is in the post absorptive state, and has not eaten for at least 12 hours.

Find below java program.









package swain.swain;

import java.util.Scanner;

public class BMR {
public static void main(String[] args) {
int age;

double weight, height, BMRw, BMRm;

System.out.println("Enter weight in lbs:");

Scanner kb = new Scanner(System.in);

weight = kb.nextDouble();

System.out.println("Enter height in inches:");

height = kb.nextDouble();

System.out.println("Enter age in years:");

age = kb.nextInt();

BMRw = 655 + (4.3 * weight) + (4.7 * height) - (4.7 * age);

BMRm = 66 + (6.3 * weight) + (12.9 * height) - (6.8 * age);

System.out.println("BMR for woman is: " + BMRw);

System.out.println("BMR for man is: " + BMRm);

System.out.println("A typical Chocolate Bar contains about 230 calories");

System.out.println("No. of Chocolate Bars consumed to maintain your weight: ");

int choco = 230;

System.out.println(Math.round(BMRw / choco));
System.out.println(Math.round(BMRm / choco));
}
}

Wednesday, January 11, 2017

Java Program : How to find the LOVE percentage calculator between a boy and a girl.

It is a Fun Love calculator  algorithm to find out love percentage. It is only for fun.

You can check FLAMES Game.



Here is Java program.


package swain.swain;

import java.util.ArrayList;
import java.util.List;

public class LoveCalculator {
private static List<String> getCount(String fname, String sname) {
List<String> list = new ArrayList<String>();
String love = "Love";
String name1 = fname;
String name2 = sname;
for (int i = 0; i < name1.length(); i++) {
String temp = name1.charAt(i) + "";

if (list.contains(temp)) {
int indexOfElement = list.indexOf(temp);
int prevCount = Integer.parseInt(list.get(++indexOfElement).toString());
prevCount++;
String newCount = (prevCount) + "";
list.set(indexOfElement, newCount);
continue;
}

list.add(temp);
list.add("1");
}

for (int i = 0; i < name2.length(); i++) {
String temp = name2.charAt(i) + "";

if (list.contains(temp)) {
int indexOfElement = list.indexOf(temp);
int prevCount = Integer.parseInt(list.get(++indexOfElement).toString());
prevCount++;
String newCount = (prevCount) + "";
list.set(indexOfElement, newCount);
continue;
}

list.add(temp);
list.add("1");
}

for (int i = 0; i < love.length(); i++) {
String temp = love.charAt(i) + "";

if (list.contains(temp)) {
int indexOfElement = list.indexOf(temp);
int prevCount = Integer.parseInt(list.get(++indexOfElement).toString());
prevCount++;
String newCount = (prevCount) + "";
list.set(indexOfElement, newCount);
continue;
}

list.add(temp);
list.add("1");
}
List<String> result = new ArrayList<String>();

for (int i = 1; i < list.size(); i += 2) {
result.add(list.get(i));
}
return result;
}

private static int getLovePercentage(String fname, String sname) {
List<String> count = getCount(fname, sname);
if (count.size() == 1) {
String result = count.get(0).toString() + "";
return Integer.parseInt(result);
}

if (count.size() == 2) {
String result = count.get(0).toString() + count.get(1).toString();
return Integer.parseInt(result);
}

do {
List<String> sub = new ArrayList<String>();
int size = count.size() / 2;
for (int i = 0; i < size; i++) {
String newC = (Integer.parseInt(count.get(i).toString()) + Integer.parseInt(count.get(count.size() - 1 - i).toString())) + "";

if (newC.length() == 2) {
sub.add((newC.charAt(0) + ""));
sub.add((newC.charAt(1) + ""));
} else {
sub.add(newC);
}
}

if ((size * 2) != count.size())
sub.add(count.get(size));

count = new ArrayList<String>();
count = sub;
} while (count.size() != 2);

String result = count.get(0).toString() + count.get(1).toString();
return Integer.parseInt(result);
}

public static String getLovePercentageResult(String fname, String sname) {
int per = getLovePercentage(fname, sname);
String result = "Love Percentage Between " + fname + " And " + sname + " is " + per + "% ";

return result;
}

public static void main(String args[]) {
System.out.println(LoveCalculator.getLovePercentageResult("Rama", "Sita"));
}
}


Output: