Skip to content

Instantly share code, notes, and snippets.

@sourcerebels
Created June 10, 2011 19:06
Show Gist options
  • Save sourcerebels/1019539 to your computer and use it in GitHub Desktop.
Save sourcerebels/1019539 to your computer and use it in GitHub Desktop.
Código generado en el Coding Dojo del 10/07/2010 por @lordudun @pitbcn @sourcerebels (TheCube)
package com.sourcebels
import groovy.util.GroovyTestCase;
class TheCube {
public boolean containsPrimeNumber(String code1, String code2, String code3) {
if (isPrimeNumber(sumDigits(code1)) ||
isPrimeNumber(sumDigits(code2)) ||
isPrimeNumber(sumDigits(code3)) ) {
return true
}
return false
}
public boolean isPrimeNumber(Integer number) {
int previousNumber = number - 1
for (; previousNumber > 1 ; previousNumber --) {
if (number % previousNumber == 0) {
return false
}
}
return true
}
public Integer sumDigits(String code) {
Integer sum = 0;
for (int pos = 0; pos < code.length(); pos++) {
sum += Integer.valueOf(code[pos])
}
return sum
}
}
class TheCubeTests extends GroovyTestCase {
private TheCube theCube
public void setUp() {
theCube = new TheCube()
}
public void testShouldReturnFalse() {
assertFalse(theCube.containsPrimeNumber("6", "6", "6"))
assertFalse(theCube.containsPrimeNumber("24", "44", "66"))
}
public void testShouldReturnTrue() {
assertTrue(theCube.containsPrimeNumber("7", "6", "6"))
assertTrue(theCube.containsPrimeNumber("6", "7", "6"))
assertTrue(theCube.containsPrimeNumber("6", "6", "7"))
assertTrue(theCube.containsPrimeNumber("6", "7", "7"))
assertTrue(theCube.containsPrimeNumber("7", "7", "7"))
assertTrue(theCube.containsPrimeNumber("6", "6", "43"))
assertTrue(theCube.containsPrimeNumber("21", "6", "6"))
assertTrue(theCube.containsPrimeNumber("34", "6", "6"))
assertTrue(theCube.containsPrimeNumber("6", "34", "6"))
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment