Skip to content
This repository has been archived by the owner on Feb 6, 2025. It is now read-only.

Commit

Permalink
Conversione fino a 20
Browse files Browse the repository at this point in the history
  • Loading branch information
EjoGrejo committed May 16, 2024
1 parent 690c64d commit b56a13a
Show file tree
Hide file tree
Showing 23 changed files with 139 additions and 125 deletions.
6 changes: 4 additions & 2 deletions src/main/java/it/unipd/mtss/IntegerToRoman.java
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ public class IntegerToRoman {
// Map che associa i numeri arabi ai corrispondenti numeri romani
private static final TreeMap<Integer, String> ROMAN_NUMERALS_MAP = new TreeMap<>();
static {

ROMAN_NUMERALS_MAP.put(10, "X");
ROMAN_NUMERALS_MAP.put(9, "IX");
ROMAN_NUMERALS_MAP.put(5, "V");
Expand All @@ -18,8 +19,9 @@ public class IntegerToRoman {
}

public static String convert(int number){
if (number < 1 || number > 10) {
throw new IllegalArgumentException("Il numero deve essere compreso tra 1 e 10.");

if (number < 1 || number > 20) {
throw new IllegalArgumentException("Il numero deve essere compreso tra 1 e 20.");
}

StringBuilder romanNumber = new StringBuilder();
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/it/unipd/mtss/RomanPrinter.java
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,15 @@ public static String printAsciiArt(String romanNumber){
char c = romanNumber.charAt(i);
switch(c) {
case 'I':

result.append("***\n");
result.append(" * \n");
result.append(" * \n");
result.append(" * \n");
result.append("***\n");
result.append("\n");
break;

case 'V':
result.append("* *\n");
result.append(" * * \n");
Expand All @@ -31,6 +33,7 @@ public static String printAsciiArt(String romanNumber){
result.append(" * \n");
result.append(" \n");
break;

case 'X':
result.append("* * \n");
result.append(" * * \n");
Expand All @@ -39,6 +42,7 @@ public static String printAsciiArt(String romanNumber){
result.append("* *\n");
result.append(" \n");
break;

default:
throw new IllegalArgumentException("Invalid Roman numeral: " + c);
}
Expand Down
10 changes: 9 additions & 1 deletion src/test/java/it/unipd/mtss/IntegerToRomanTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -43,9 +43,17 @@ public void First9NumbersConversion() {
assertEquals(IntegerToRoman.convert(9), "IX");
}

@Test
public void First20NumbersConversion() {
assertEquals(IntegerToRoman.convert(12), "XII");
assertEquals(IntegerToRoman.convert(17), "XVII");
assertEquals(IntegerToRoman.convert(20), "XX");
}

//numeri con una sola lettera fino a 10
@Test
public void OneLetterNumbers() {
assertEquals(IntegerToRoman.convert(10), "X");
}
}
}

3 changes: 2 additions & 1 deletion src/test/java/it/unipd/mtss/RomanPrinterTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -54,4 +54,5 @@ public void TestX() {
String stringa= result.toString();
assertEquals(RomanPrinter.printAsciiArt("X"), stringa);
}
}
}

Binary file modified target/classes/it/unipd/mtss/IntegerToRoman.class
Binary file not shown.
Binary file modified target/classes/it/unipd/mtss/RomanPrinter.class
Binary file not shown.
Binary file modified target/jacoco.exec
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
/Users/serpentaki/assignment2/src/main/java/it/unipd/mtss/IntegerToRoman.java
/Users/serpentaki/assignment2/src/main/java/it/unipd/mtss/RomanPrinter.java
/home/elio/roman-number/src/main/java/it/unipd/mtss/IntegerToRoman.java
/home/elio/roman-number/src/main/java/it/unipd/mtss/RomanPrinter.java
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
/Users/serpentaki/assignment2/src/test/java/it/unipd/mtss/RomanPrinterTest.java
/Users/serpentaki/assignment2/src/test/java/it/unipd/mtss/IntegerToRomanTest.java
/home/elio/roman-number/src/test/java/it/unipd/mtss/RomanPrinterTest.java
/home/elio/roman-number/src/test/java/it/unipd/mtss/IntegerToRomanTest.java
2 changes: 1 addition & 1 deletion target/site/jacoco/index.html
Original file line number Diff line number Diff line change
@@ -1 +1 @@
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="it"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="jacoco-resources/report.gif" type="image/gif"/><title>roman-number</title><script type="text/javascript" src="jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="jacoco-sessions.html" class="el_session">Sessions</a></span><span class="el_report">roman-number</span></div><h1>roman-number</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">10 of 195</td><td class="ctr2">94%</td><td class="bar">0 of 12</td><td class="ctr2">100%</td><td class="ctr1">3</td><td class="ctr2">13</td><td class="ctr1">3</td><td class="ctr2">46</td><td class="ctr1">3</td><td class="ctr2">6</td><td class="ctr1">0</td><td class="ctr2">2</td></tr></tfoot><tbody><tr><td id="a0"><a href="it.unipd.mtss/index.html" class="el_package">it.unipd.mtss</a></td><td class="bar" id="b0"><img src="jacoco-resources/redbar.gif" width="6" height="10" title="10" alt="10"/><img src="jacoco-resources/greenbar.gif" width="113" height="10" title="185" alt="185"/></td><td class="ctr2" id="c0">94%</td><td class="bar" id="d0"><img src="jacoco-resources/greenbar.gif" width="120" height="10" title="12" alt="12"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f0">3</td><td class="ctr2" id="g0">13</td><td class="ctr1" id="h0">3</td><td class="ctr2" id="i0">46</td><td class="ctr1" id="j0">3</td><td class="ctr2" id="k0">6</td><td class="ctr1" id="l0">0</td><td class="ctr2" id="m0">2</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.8.202204050719</span></div></body></html>
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="jacoco-resources/report.gif" type="image/gif"/><title>roman-number</title><script type="text/javascript" src="jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb', 'coveragetable'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="jacoco-sessions.html" class="el_session">Sessions</a></span><span class="el_report">roman-number</span></div><h1>roman-number</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td><td class="sortable ctr1" id="l" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="m" onclick="toggleSort(this)">Classes</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">10 of 195</td><td class="ctr2">94%</td><td class="bar">0 of 12</td><td class="ctr2">100%</td><td class="ctr1">3</td><td class="ctr2">13</td><td class="ctr1">3</td><td class="ctr2">46</td><td class="ctr1">3</td><td class="ctr2">6</td><td class="ctr1">0</td><td class="ctr2">2</td></tr></tfoot><tbody><tr><td id="a0"><a href="it.unipd.mtss/index.html" class="el_package">it.unipd.mtss</a></td><td class="bar" id="b0"><img src="jacoco-resources/redbar.gif" width="6" height="10" title="10" alt="10"/><img src="jacoco-resources/greenbar.gif" width="113" height="10" title="185" alt="185"/></td><td class="ctr2" id="c0">94%</td><td class="bar" id="d0"><img src="jacoco-resources/greenbar.gif" width="120" height="10" title="12" alt="12"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f0">3</td><td class="ctr2" id="g0">13</td><td class="ctr1" id="h0">3</td><td class="ctr2" id="i0">46</td><td class="ctr1" id="j0">3</td><td class="ctr2" id="k0">6</td><td class="ctr1" id="l0">0</td><td class="ctr2" id="m0">2</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.8.202204050719</span></div></body></html>
2 changes: 1 addition & 1 deletion target/site/jacoco/it.unipd.mtss/IntegerToRoman.html
Original file line number Diff line number Diff line change
@@ -1 +1 @@
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="it"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>IntegerToRoman</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">roman-number</a> &gt; <a href="index.html" class="el_package">it.unipd.mtss</a> &gt; <span class="el_class">IntegerToRoman</span></div><h1>IntegerToRoman</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">3 of 78</td><td class="ctr2">96%</td><td class="bar">0 of 6</td><td class="ctr2">100%</td><td class="ctr1">1</td><td class="ctr2">6</td><td class="ctr1">1</td><td class="ctr2">16</td><td class="ctr1">1</td><td class="ctr2">3</td></tr></tfoot><tbody><tr><td id="a1"><a href="IntegerToRoman.java.html#L8" class="el_method">IntegerToRoman()</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="9" height="10" title="3" alt="3"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a0"><a href="IntegerToRoman.java.html#L21" class="el_method">convert(int)</a></td><td class="bar" id="b1"><img src="../jacoco-resources/greenbar.gif" width="120" height="10" title="40" alt="40"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d0"><img src="../jacoco-resources/greenbar.gif" width="120" height="10" title="6" alt="6"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g0">4</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i0">8</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a2"><a href="IntegerToRoman.java.html#L11" class="el_method">static {...}</a></td><td class="bar" id="b2"><img src="../jacoco-resources/greenbar.gif" width="105" height="10" title="35" alt="35"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i1">7</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.8.202204050719</span></div></body></html>
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/><link rel="stylesheet" href="../jacoco-resources/report.css" type="text/css"/><link rel="shortcut icon" href="../jacoco-resources/report.gif" type="image/gif"/><title>IntegerToRoman</title><script type="text/javascript" src="../jacoco-resources/sort.js"></script></head><body onload="initialSort(['breadcrumb'])"><div class="breadcrumb" id="breadcrumb"><span class="info"><a href="../jacoco-sessions.html" class="el_session">Sessions</a></span><a href="../index.html" class="el_report">roman-number</a> &gt; <a href="index.html" class="el_package">it.unipd.mtss</a> &gt; <span class="el_class">IntegerToRoman</span></div><h1>IntegerToRoman</h1><table class="coverage" cellspacing="0" id="coveragetable"><thead><tr><td class="sortable" id="a" onclick="toggleSort(this)">Element</td><td class="down sortable bar" id="b" onclick="toggleSort(this)">Missed Instructions</td><td class="sortable ctr2" id="c" onclick="toggleSort(this)">Cov.</td><td class="sortable bar" id="d" onclick="toggleSort(this)">Missed Branches</td><td class="sortable ctr2" id="e" onclick="toggleSort(this)">Cov.</td><td class="sortable ctr1" id="f" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="g" onclick="toggleSort(this)">Cxty</td><td class="sortable ctr1" id="h" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="i" onclick="toggleSort(this)">Lines</td><td class="sortable ctr1" id="j" onclick="toggleSort(this)">Missed</td><td class="sortable ctr2" id="k" onclick="toggleSort(this)">Methods</td></tr></thead><tfoot><tr><td>Total</td><td class="bar">3 of 78</td><td class="ctr2">96%</td><td class="bar">0 of 6</td><td class="ctr2">100%</td><td class="ctr1">1</td><td class="ctr2">6</td><td class="ctr1">1</td><td class="ctr2">16</td><td class="ctr1">1</td><td class="ctr2">3</td></tr></tfoot><tbody><tr><td id="a1"><a href="IntegerToRoman.java.html#L8" class="el_method">IntegerToRoman()</a></td><td class="bar" id="b0"><img src="../jacoco-resources/redbar.gif" width="9" height="10" title="3" alt="3"/></td><td class="ctr2" id="c2">0%</td><td class="bar" id="d1"/><td class="ctr2" id="e1">n/a</td><td class="ctr1" id="f0">1</td><td class="ctr2" id="g1">1</td><td class="ctr1" id="h0">1</td><td class="ctr2" id="i2">1</td><td class="ctr1" id="j0">1</td><td class="ctr2" id="k0">1</td></tr><tr><td id="a0"><a href="IntegerToRoman.java.html#L23" class="el_method">convert(int)</a></td><td class="bar" id="b1"><img src="../jacoco-resources/greenbar.gif" width="120" height="10" title="40" alt="40"/></td><td class="ctr2" id="c0">100%</td><td class="bar" id="d0"><img src="../jacoco-resources/greenbar.gif" width="120" height="10" title="6" alt="6"/></td><td class="ctr2" id="e0">100%</td><td class="ctr1" id="f1">0</td><td class="ctr2" id="g0">4</td><td class="ctr1" id="h1">0</td><td class="ctr2" id="i0">8</td><td class="ctr1" id="j1">0</td><td class="ctr2" id="k1">1</td></tr><tr><td id="a2"><a href="IntegerToRoman.java.html#L11" class="el_method">static {...}</a></td><td class="bar" id="b2"><img src="../jacoco-resources/greenbar.gif" width="105" height="10" title="35" alt="35"/></td><td class="ctr2" id="c1">100%</td><td class="bar" id="d2"/><td class="ctr2" id="e2">n/a</td><td class="ctr1" id="f2">0</td><td class="ctr2" id="g2">1</td><td class="ctr1" id="h2">0</td><td class="ctr2" id="i1">7</td><td class="ctr1" id="j2">0</td><td class="ctr2" id="k2">1</td></tr></tbody></table><div class="footer"><span class="right">Created with <a href="http://www.jacoco.org/jacoco">JaCoCo</a> 0.8.8.202204050719</span></div></body></html>
Loading

0 comments on commit b56a13a

Please sign in to comment.