MP4/lab14

master
Chloe Fontenot 🏳️‍⚧️ 2022-11-08 14:36:33 +07:00
parent a6c705e360
commit bb99b4210c
23 changed files with 4226 additions and 1 deletions

3
.gitignore vendored

@ -32,3 +32,6 @@
/Exams/PracticeExamChapter6_CalebFontenot/dist/
/Assignments/lab13_CalebFontenot/nbproject/private/
/Assignments/lab13_CalebFontenot/build/
/Assignments/MP4_CalebFontenot/nbproject/private/
/Assignments/lab14_CalebFontenot/nbproject/private/
/Assignments/lab14_CalebFontenot/build/

@ -0,0 +1,73 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- You may freely edit this file. See commented blocks below for -->
<!-- some examples of how to customize the build. -->
<!-- (If you delete it and reopen the project it will be recreated.) -->
<!-- By default, only the Clean and Build commands use this build script. -->
<!-- Commands such as Run, Debug, and Test only use this build script if -->
<!-- the Compile on Save feature is turned off for the project. -->
<!-- You can turn off the Compile on Save (or Deploy on Save) setting -->
<!-- in the project's Project Properties dialog box.-->
<project name="MP4_CalebFontenot" default="default" basedir=".">
<description>Builds, tests, and runs the project MP4_CalebFontenot.</description>
<import file="nbproject/build-impl.xml"/>
<!--
There exist several targets which are by default empty and which can be
used for execution of your tasks. These targets are usually executed
before and after some main targets. They are:
-pre-init: called before initialization of project properties
-post-init: called after initialization of project properties
-pre-compile: called before javac compilation
-post-compile: called after javac compilation
-pre-compile-single: called before javac compilation of single file
-post-compile-single: called after javac compilation of single file
-pre-compile-test: called before javac compilation of JUnit tests
-post-compile-test: called after javac compilation of JUnit tests
-pre-compile-test-single: called before javac compilation of single JUnit test
-post-compile-test-single: called after javac compilation of single JUunit test
-pre-jar: called before JAR building
-post-jar: called after JAR building
-post-clean: called after cleaning build products
(Targets beginning with '-' are not intended to be called on their own.)
Example of inserting an obfuscator after compilation could look like this:
<target name="-post-compile">
<obfuscate>
<fileset dir="${build.classes.dir}"/>
</obfuscate>
</target>
For list of available properties check the imported
nbproject/build-impl.xml file.
Another way to customize the build is by overriding existing main targets.
The targets of interest are:
-init-macrodef-javac: defines macro for javac compilation
-init-macrodef-junit: defines macro for junit execution
-init-macrodef-debug: defines macro for class debugging
-init-macrodef-java: defines macro for class execution
-do-jar: JAR building
run: execution of project
-javadoc-build: Javadoc generation
test-report: JUnit report generation
An example of overriding the target for project execution could look like this:
<target name="run" depends="MP4_CalebFontenot-impl.jar">
<exec dir="bin" executable="launcher.exe">
<arg file="${dist.jar}"/>
</exec>
</target>
Notice that the overridden target depends on the jar target and not only on
the compile target as the regular run target does. Again, for a list of available
properties which you can use, check the target you are overriding in the
nbproject/build-impl.xml file.
-->
</project>

@ -0,0 +1,3 @@
Manifest-Version: 1.0
X-COMMENT: Main-Class will be added automatically by build

File diff suppressed because it is too large Load Diff

@ -0,0 +1,8 @@
build.xml.data.CRC32=a89314ee
build.xml.script.CRC32=65aa903c
build.xml.stylesheet.CRC32=f85dc8f2@1.104.0.48
# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
nbproject/build-impl.xml.data.CRC32=a89314ee
nbproject/build-impl.xml.script.CRC32=22fbeebc
nbproject/build-impl.xml.stylesheet.CRC32=12e0a6c2@1.104.0.48

@ -0,0 +1,95 @@
annotation.processing.enabled=true
annotation.processing.enabled.in.editor=false
annotation.processing.processor.options=
annotation.processing.processors.list=
annotation.processing.run.all.processors=true
annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
build.classes.dir=${build.dir}/classes
build.classes.excludes=**/*.java,**/*.form
# This directory is removed when the project is cleaned:
build.dir=build
build.generated.dir=${build.dir}/generated
build.generated.sources.dir=${build.dir}/generated-sources
# Only compile against the classpath explicitly listed here:
build.sysclasspath=ignore
build.test.classes.dir=${build.dir}/test/classes
build.test.results.dir=${build.dir}/test/results
# Uncomment to specify the preferred debugger connection transport:
#debug.transport=dt_socket
debug.classpath=\
${run.classpath}
debug.modulepath=\
${run.modulepath}
debug.test.classpath=\
${run.test.classpath}
debug.test.modulepath=\
${run.test.modulepath}
# Files in build.classes.dir which should be excluded from distribution jar
dist.archive.excludes=
# This directory is removed when the project is cleaned:
dist.dir=dist
dist.jar=${dist.dir}/MP4_CalebFontenot.jar
dist.javadoc.dir=${dist.dir}/javadoc
dist.jlink.dir=${dist.dir}/jlink
dist.jlink.output=${dist.jlink.dir}/MP4_CalebFontenot
excludes=
includes=**
jar.compress=false
javac.classpath=
# Space-separated list of extra javac options
javac.compilerargs=
javac.deprecation=false
javac.external.vm=true
javac.modulepath=
javac.processormodulepath=
javac.processorpath=\
${javac.classpath}
javac.source=1.8
javac.target=1.8
javac.test.classpath=\
${javac.classpath}:\
${build.classes.dir}
javac.test.modulepath=\
${javac.modulepath}
javac.test.processorpath=\
${javac.test.classpath}
javadoc.additionalparam=
javadoc.author=false
javadoc.encoding=${source.encoding}
javadoc.html5=false
javadoc.noindex=false
javadoc.nonavbar=false
javadoc.notree=false
javadoc.private=false
javadoc.splitindex=true
javadoc.use=true
javadoc.version=false
javadoc.windowtitle=
# The jlink additional root modules to resolve
jlink.additionalmodules=
# The jlink additional command line parameters
jlink.additionalparam=
jlink.launcher=true
jlink.launcher.name=MP4_CalebFontenot
main.class=mp4_calebfontenot.MP4_CalebFontenot
manifest.file=manifest.mf
meta.inf.dir=${src.dir}/META-INF
mkdist.disabled=false
platform.active=default_platform
run.classpath=\
${javac.classpath}:\
${build.classes.dir}
# Space-separated list of JVM arguments used when running the project.
# You may also define separate properties like run-sys-prop.name=value instead of -Dname=value.
# To set system properties for unit tests define test-sys-prop.name=value:
run.jvmargs=
run.modulepath=\
${javac.modulepath}
run.test.classpath=\
${javac.test.classpath}:\
${build.test.classes.dir}
run.test.modulepath=\
${javac.test.modulepath}
source.encoding=UTF-8
src.dir=src
test.src.dir=test

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://www.netbeans.org/ns/project/1">
<type>org.netbeans.modules.java.j2seproject</type>
<configuration>
<data xmlns="http://www.netbeans.org/ns/j2se-project/3">
<name>MP4_CalebFontenot</name>
<source-roots>
<root id="src.dir"/>
</source-roots>
<test-roots>
<root id="test.src.dir"/>
</test-roots>
</data>
</configuration>
</project>

@ -0,0 +1,95 @@
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package mp4_calebfontenot;
/**
*
* @author caleb
*/
public class MP4_CalebFontenot
{
/**
* If the result from Step 4 is divisible by 10, the card number is valid;
* otherwise, it is invalid. For example, the number 4388576018402626 is
* invalid, but the number 4388576018410707 is valid
*
* @param CreditCard
* @return
*/
public static boolean isValid(String CreditCard)
{
return true;
}
/**
* Sum the results from Steps 1, 2 and Step 3. 37 + 38 = 75
*
* @param step1andSep2 result form step 1 and step 2
* @param step3 result form step 3
* @return
*/
public static int sum(int step1andSep2, int step3)
{
return step1andSep2 + step3;
}
/**
* Add all digits in the odd places from right to left in the card number. 6
* + 6 + 0 + 8 + 0 + 7 + 8 + 3 = 38
*
* @param -creditCard the credit card number to be processed.
* @return the sum of digits at odd position from right to left.
*/
public static int addOddNumbersFromRightToLeft(String creditCard)
{
return -1;
}
/**
* Double every second digit from right to left. If doubling of a digit
* results in a two-digit number, add up the two digits to get a
* single-digit number. 2 * 2 = 4 2 * 2 = 4 4 * 2 = 8 1 * 2 = 2 6 * 2 = 12
* (1 + 2 = 3) 5 * 2 = 10 (1 + 0 = 1) 8 * 2 = 16 (1 + 6 = 7) 4 * 2 = 8 Step
* 2 Now add all single-digit numbers from Step 1. 4 + 4 + 8 + 2 + 3 + 1 + 7
* + 8 = 37
*
* @param -creditCard the credit card number to be processed.
* @return
*/
public static int doubleDigitsAndSumSingleDigits(String creditCard)
{
return -1;
}
/**
* Displays Q/q or C/c. If the user enters C, it read the credit number and
* returns it as String. If the user types Q/q returns 0
*
* @return a string with credit card number or 0.
*/
public static String menu()
{
return "creditcard number or 0";
}
/**
*
* @param args
*/
public static void main(String[] args)
{
String userInput = menu();
while (!userInput.equals("0") )//user has not entered Q/q
{
MP4.doubleDigitsAndSumSingleDigits(userInput);
//complete the code
userInput = menu();
}
}
}

@ -0,0 +1,73 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- You may freely edit this file. See commented blocks below for -->
<!-- some examples of how to customize the build. -->
<!-- (If you delete it and reopen the project it will be recreated.) -->
<!-- By default, only the Clean and Build commands use this build script. -->
<!-- Commands such as Run, Debug, and Test only use this build script if -->
<!-- the Compile on Save feature is turned off for the project. -->
<!-- You can turn off the Compile on Save (or Deploy on Save) setting -->
<!-- in the project's Project Properties dialog box.-->
<project name="lab14_CalebFontenot" default="default" basedir=".">
<description>Builds, tests, and runs the project lab14_CalebFontenot.</description>
<import file="nbproject/build-impl.xml"/>
<!--
There exist several targets which are by default empty and which can be
used for execution of your tasks. These targets are usually executed
before and after some main targets. They are:
-pre-init: called before initialization of project properties
-post-init: called after initialization of project properties
-pre-compile: called before javac compilation
-post-compile: called after javac compilation
-pre-compile-single: called before javac compilation of single file
-post-compile-single: called after javac compilation of single file
-pre-compile-test: called before javac compilation of JUnit tests
-post-compile-test: called after javac compilation of JUnit tests
-pre-compile-test-single: called before javac compilation of single JUnit test
-post-compile-test-single: called after javac compilation of single JUunit test
-pre-jar: called before JAR building
-post-jar: called after JAR building
-post-clean: called after cleaning build products
(Targets beginning with '-' are not intended to be called on their own.)
Example of inserting an obfuscator after compilation could look like this:
<target name="-post-compile">
<obfuscate>
<fileset dir="${build.classes.dir}"/>
</obfuscate>
</target>
For list of available properties check the imported
nbproject/build-impl.xml file.
Another way to customize the build is by overriding existing main targets.
The targets of interest are:
-init-macrodef-javac: defines macro for javac compilation
-init-macrodef-junit: defines macro for junit execution
-init-macrodef-debug: defines macro for class debugging
-init-macrodef-java: defines macro for class execution
-do-jar: JAR building
run: execution of project
-javadoc-build: Javadoc generation
test-report: JUnit report generation
An example of overriding the target for project execution could look like this:
<target name="run" depends="lab14_CalebFontenot-impl.jar">
<exec dir="bin" executable="launcher.exe">
<arg file="${dist.jar}"/>
</exec>
</target>
Notice that the overridden target depends on the jar target and not only on
the compile target as the regular run target does. Again, for a list of available
properties which you can use, check the target you are overriding in the
nbproject/build-impl.xml file.
-->
</project>

@ -0,0 +1,3 @@
Manifest-Version: 1.0
X-COMMENT: Main-Class will be added automatically by build

File diff suppressed because it is too large Load Diff

@ -0,0 +1,8 @@
build.xml.data.CRC32=de90fddd
build.xml.script.CRC32=cc25de64
build.xml.stylesheet.CRC32=f85dc8f2@1.104.0.48
# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml.
# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you.
nbproject/build-impl.xml.data.CRC32=de90fddd
nbproject/build-impl.xml.script.CRC32=4238a324
nbproject/build-impl.xml.stylesheet.CRC32=12e0a6c2@1.104.0.48

@ -0,0 +1,95 @@
annotation.processing.enabled=true
annotation.processing.enabled.in.editor=false
annotation.processing.processor.options=
annotation.processing.processors.list=
annotation.processing.run.all.processors=true
annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output
build.classes.dir=${build.dir}/classes
build.classes.excludes=**/*.java,**/*.form
# This directory is removed when the project is cleaned:
build.dir=build
build.generated.dir=${build.dir}/generated
build.generated.sources.dir=${build.dir}/generated-sources
# Only compile against the classpath explicitly listed here:
build.sysclasspath=ignore
build.test.classes.dir=${build.dir}/test/classes
build.test.results.dir=${build.dir}/test/results
# Uncomment to specify the preferred debugger connection transport:
#debug.transport=dt_socket
debug.classpath=\
${run.classpath}
debug.modulepath=\
${run.modulepath}
debug.test.classpath=\
${run.test.classpath}
debug.test.modulepath=\
${run.test.modulepath}
# Files in build.classes.dir which should be excluded from distribution jar
dist.archive.excludes=
# This directory is removed when the project is cleaned:
dist.dir=dist
dist.jar=${dist.dir}/lab14_CalebFontenot.jar
dist.javadoc.dir=${dist.dir}/javadoc
dist.jlink.dir=${dist.dir}/jlink
dist.jlink.output=${dist.jlink.dir}/lab14_CalebFontenot
excludes=
includes=**
jar.compress=false
javac.classpath=
# Space-separated list of extra javac options
javac.compilerargs=
javac.deprecation=false
javac.external.vm=true
javac.modulepath=
javac.processormodulepath=
javac.processorpath=\
${javac.classpath}
javac.source=1.8
javac.target=1.8
javac.test.classpath=\
${javac.classpath}:\
${build.classes.dir}
javac.test.modulepath=\
${javac.modulepath}
javac.test.processorpath=\
${javac.test.classpath}
javadoc.additionalparam=
javadoc.author=false
javadoc.encoding=${source.encoding}
javadoc.html5=false
javadoc.noindex=false
javadoc.nonavbar=false
javadoc.notree=false
javadoc.private=false
javadoc.splitindex=true
javadoc.use=true
javadoc.version=false
javadoc.windowtitle=
# The jlink additional root modules to resolve
jlink.additionalmodules=
# The jlink additional command line parameters
jlink.additionalparam=
jlink.launcher=true
jlink.launcher.name=lab14_CalebFontenot
main.class=lab14_calebfontenot.Lab14_CalebFontenot
manifest.file=manifest.mf
meta.inf.dir=${src.dir}/META-INF
mkdist.disabled=false
platform.active=default_platform
run.classpath=\
${javac.classpath}:\
${build.classes.dir}
# Space-separated list of JVM arguments used when running the project.
# You may also define separate properties like run-sys-prop.name=value instead of -Dname=value.
# To set system properties for unit tests define test-sys-prop.name=value:
run.jvmargs=
run.modulepath=\
${javac.modulepath}
run.test.classpath=\
${javac.test.classpath}:\
${build.test.classes.dir}
run.test.modulepath=\
${javac.test.modulepath}
source.encoding=UTF-8
src.dir=src
test.src.dir=test

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://www.netbeans.org/ns/project/1">
<type>org.netbeans.modules.java.j2seproject</type>
<configuration>
<data xmlns="http://www.netbeans.org/ns/j2se-project/3">
<name>lab14_CalebFontenot</name>
<source-roots>
<root id="src.dir"/>
</source-roots>
<test-roots>
<root id="test.src.dir"/>
</test-roots>
</data>
</configuration>
</project>

@ -0,0 +1,21 @@
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Main.java to edit this template
*/
package lab14_calebfontenot;
/**
*
* @author caleb
*/
public class Lab14_CalebFontenot {
/**
* @param args the command line arguments
*/
public static void main(String[] args)
{
// TODO code application logic here
}
}

@ -0,0 +1,48 @@
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package lab14_calebfontenot;
/**
*
* @author caleb
*/
public class PrimeNumbers {
public static void main(String[] args)
{
System.out.println("The first 50 prime numbers are: \n");
printPrimeNumbers(50);
}
public static void printPrimeNumbers(int numberOfPrimes) {
final int NUMBER_OF_PRIMES_PER_LINE = 10; // Display 10 per line
int count = 0; // Count the number of prime numbers
int number = 1; // A number to be tested for primeness
//> Repeatedly find prime numbers
while (count < numberOfPrimes) {
//>> Print the prime number and increase the count
if (isPrime(number)) {
count++; // Increase the count
if (count % NUMBER_OF_PRIMES_PER_LINE == 0) {
//>> Print the number and advance to the new line
System.out.printf("%-5d\n", number);
}
else {
System.out.printf("%-5d", number);
}
}
//>> Check if the next number is prime
number++;
}
}
public static boolean isPrime(int number) {
for (int divisor = 2; divisor <= number / 2; divisor++) {
if (number % divisor == 0) {
// If true, number is not prime
return false;
}
}
return true; // number is prime
}
}

@ -0,0 +1,126 @@
/*
* Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license
* Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Class.java to edit this template
*/
package lab14_calebfontenot;
import java.util.Scanner;
/**
*
* @author caleb
*/
public class StaticMethods {
static int executeCount = 0;
public static void main(String[] args)
{
StaticMethods.printJava();
for (int i = 0; i < 20; i++) {
for (int y = 0; y < 5; y++) {
StaticMethods.printMyName();
}
System.out.println();
}
executeCount = 0;
for (int i = 0; i < 50; i++) {
for (int y = 0; y < 2; y++) {
StaticMethods.printMessage("Java is fun!");
}
System.out.println();
}
/*
System.out.println(StaticMethods.squareNumber(5));
System.out.println(StaticMethods.squareNumber(5.0));
System.out.println(StaticMethods.cubeNumber(5));
System.out.println(StaticMethods.cubeNumber(5.0));
//System.out.println(StaticMethods.menu());
*/
/*
char menuReturn = StaticMethods.menu();
if (menuReturn == 'c') {
System.out.println(StaticMethods.cubeNumber(5));
System.out.println(StaticMethods.cubeNumber(5.0));
} else if (menuReturn == 's') {
System.out.println(StaticMethods.squareNumber(5));
System.out.println(StaticMethods.squareNumber(5.0));
}
System.out.println(StaticMethods.menuInteger());
*/
// Area
Scanner input = new Scanner(System.in);
System.out.print("Enter the number of sides: ");
int n = input.nextInt();
System.out.print("Enter the side: ");
double side = input.nextDouble();
// Call the area function
System.out.println("The area of the polygon is: " + StaticMethods.area(n, side));
}
public static void printJava() {
System.out.println("Java");
}
public static void printMyName() {
System.out.print("Caleb Fontenot ");
System.out.print(++executeCount + " ");
}
public static void printMessage(String msg) {
System.out.print(msg + " ");
System.out.print(++executeCount + " ");
}
public static int squareNumber(int number) {
System.out.println("INT (squre) was called");
return number * number;
}
public static double squareNumber(double number) {
System.out.println("DOUBLE (square) was called");
return number * number;
}
public static int cubeNumber(int number) {
System.out.println("INT (cube) was called");
return number * StaticMethods.squareNumber(number);
}
public static double cubeNumber(double number) {
System.out.println("DOUBLE (cube) was called");
return number * StaticMethods.squareNumber(number);
}
public static char menu() {
String s = "";
do {
System.out.println("type S\\s to square a number");
System.out.println("type C\\c to cube a number");
System.out.print("Input: ");
s = new Scanner(System.in).next();
if ("c".compareToIgnoreCase(s) != 0 && "s".compareToIgnoreCase(s) != 0) {
System.out.println("\tplease enter a valid character");
}
} while ("c".compareToIgnoreCase(s) != 0 && "s".compareToIgnoreCase(s) != 0);
return s.toLowerCase().charAt(0);
}
public static int menuInteger() {
Scanner input = new Scanner(System.in);
int returnInt = -1;
while (true) {
System.out.print("Enter an integer (must be 1000, 2000, or 3000): ");
returnInt = input.nextInt();
if (returnInt == 1000){
return returnInt;
}
else if (returnInt == 2000) {
return returnInt;
}
else if (returnInt == 3000) {
return returnInt;
}
else {
System.out.println("Integer not allowed, try again");
}
}
}
public static double area(int n, double side) {
// Compute area
return (n * Math.pow(side, 2)) / (4.0 * Math.tan(Math.PI / n));
}
}

@ -11,6 +11,8 @@ package com.mycompany.mavenproject1;
public class Unicode {
public static void main(String[] args)
{
System.out.println("\u2764");
//System.out.println("\u2764");
char char_a = 'a', char_0 = '0', char_A = 'A';
System.out.println((int) char_0 + " = 0\n" + (int) char_a + " = a\n" + (int) char_A + " = A");
}
}