Commit 814a86e6 by Yannine Alvarez

Repositorio de ejercicio de generala en kotlin

parents
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<JetCodeStyleSettings>
<option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
</JetCodeStyleSettings>
<codeStyleSettings language="kotlin">
<option name="CODE_STYLE_DEFAULTS" value="KOTLIN_OFFICIAL" />
</codeStyleSettings>
</code_scheme>
</component>
\ No newline at end of file
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="USE_PER_PROJECT_SETTINGS" value="true" />
</state>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Kotlin2JvmCompilerArguments">
<option name="jvmTarget" value="1.8" />
</component>
</project>
\ No newline at end of file
<component name="libraryTable">
<library name="KotlinJavaRuntime">
<CLASSES>
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-stdlib.jar!/" />
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-reflect.jar!/" />
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-test.jar!/" />
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-stdlib-jdk7.jar!/" />
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-stdlib-jdk8.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-stdlib-sources.jar!/" />
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-reflect-sources.jar!/" />
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-test-sources.jar!/" />
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-stdlib-jdk7-sources.jar!/" />
<root url="jar://$KOTLIN_BUNDLED$/lib/kotlin-stdlib-jdk8-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="11 (3)" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/Generala.iml" filepath="$PROJECT_DIR$/Generala.iml" />
</modules>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$USER_HOME$/Desktop/kotlin-0003-generala" vcs="Git" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ChangeListManager">
<list default="true" id="d169dd9f-2031-4c12-a6ec-a639b27c4e5c" name="Default Changelist" comment="" />
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
<option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
<option name="LAST_RESOLUTION" value="IGNORE" />
</component>
<component name="FileTemplateManagerImpl">
<option name="RECENT_TEMPLATES">
<list>
<option value="Kotlin File" />
<option value="Kotlin Class" />
</list>
</option>
</component>
<component name="Git.Settings">
<option name="RECENT_GIT_ROOT_PATH" value="$USER_HOME$/Desktop/kotlin-0003-generala" />
</component>
<component name="ProjectId" id="1aRefNQIlCZDsAzEaGYG52vMnL5" />
<component name="ProjectLevelVcsManager" settingsEditedManually="true" />
<component name="ProjectViewState">
<option name="hideEmptyMiddlePackages" value="true" />
<option name="showExcludedFiles" value="true" />
<option name="showLibraryContents" value="true" />
</component>
<component name="PropertiesComponent">
<property name="RunOnceActivity.ShowReadmeOnStart" value="true" />
<property name="android.sdk.path" value="$USER_HOME$/AppData/Local/Android/Sdk" />
<property name="last_opened_file_path" value="$USER_HOME$/Desktop/kotlin-0003-generala" />
</component>
<component name="RunManager">
<configuration name="GenerarKt" type="JetRunConfigurationType" factoryName="Kotlin" temporary="true" nameIsGenerated="true">
<module name="Generala" />
<option name="VM_PARAMETERS" />
<option name="PROGRAM_PARAMETERS" />
<option name="ALTERNATIVE_JRE_PATH_ENABLED" value="false" />
<option name="ALTERNATIVE_JRE_PATH" />
<option name="PASS_PARENT_ENVS" value="true" />
<option name="MAIN_CLASS_NAME" value="GenerarKt" />
<option name="WORKING_DIRECTORY" />
<method v="2">
<option name="Make" enabled="true" />
</method>
</configuration>
<recent_temporary>
<list>
<item itemvalue="Kotlin.GenerarKt" />
</list>
</recent_temporary>
</component>
<component name="SvnConfiguration">
<configuration />
</component>
<component name="TaskManager">
<task active="true" id="Default" summary="Default task">
<changelist id="d169dd9f-2031-4c12-a6ec-a639b27c4e5c" name="Default Changelist" comment="" />
<created>1586702936070</created>
<option name="number" value="Default" />
<option name="presentableId" value="Default" />
<updated>1586702936070</updated>
</task>
<servers />
</component>
<component name="WindowStateProjectService">
<state x="463" y="104" key="FileChooserDialogImpl" timestamp="1586788023148">
<screen x="0" y="0" width="1366" height="728" />
</state>
<state x="463" y="104" key="FileChooserDialogImpl/0.0.1366.728@0.0.1366.728" timestamp="1586788023148" />
<state width="1322" height="174" key="GridCell.Tab.0.bottom" timestamp="1586737310734">
<screen x="0" y="0" width="1366" height="728" />
</state>
<state width="1322" height="174" key="GridCell.Tab.0.bottom/0.0.1366.728@0.0.1366.728" timestamp="1586737310734" />
<state width="1322" height="174" key="GridCell.Tab.0.center" timestamp="1586737310733">
<screen x="0" y="0" width="1366" height="728" />
</state>
<state width="1322" height="174" key="GridCell.Tab.0.center/0.0.1366.728@0.0.1366.728" timestamp="1586737310733" />
<state width="1322" height="174" key="GridCell.Tab.0.left" timestamp="1586737310733">
<screen x="0" y="0" width="1366" height="728" />
</state>
<state width="1322" height="174" key="GridCell.Tab.0.left/0.0.1366.728@0.0.1366.728" timestamp="1586737310733" />
<state width="1322" height="174" key="GridCell.Tab.0.right" timestamp="1586737310733">
<screen x="0" y="0" width="1366" height="728" />
</state>
<state width="1322" height="174" key="GridCell.Tab.0.right/0.0.1366.728@0.0.1366.728" timestamp="1586737310733" />
<state x="215" y="140" key="run.anything.popup" timestamp="1586730732113">
<screen x="0" y="0" width="1366" height="728" />
</state>
<state x="215" y="140" key="run.anything.popup/0.0.1366.728@0.0.1366.728" timestamp="1586730732113" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="KotlinJavaRuntime" level="project" />
</component>
</module>
\ No newline at end of file
class Generar {
// ESTA ES LA FUNCIÓN QUE HAY QUE IMPLEMENTAR
// TAMBIÉN PUEDEN AGREGAR OTRAS FUNCIONES y/o CLASES
// QUE NECESITEN PARA RESOLVER EL EJERCICIO DE LA
// MANERA MÁS ORDENADA POSIBLE
fun jugada(dados: String): String {
var count = 0
var mayor = 0
var dosIguales = false
for (i in 0 until dados.length) {
for (j in 0 until dados.length) {
if (dados[i] == dados[j]) count++
}
if (count > mayor) {
mayor = count
}
if (count == 2) {
dosIguales = true
}
count = 0
}
return if (mayor == 5) {
"GENERALA"
} else {
if (mayor == 4) {
"PÓKER"
} else {
if (mayor == 3 && dosIguales) {
"FULL"
} else {
if (escalera(dados)) "ESCALERA" else "NADA"
}
}
}
}
fun escalera(dados: String): Boolean {
val dadosArray: IntArray
dadosArray = IntArray(5)
for (i in 0 until dados.length) {
dadosArray[i] = dados[i].toString().toInt()
}
ordenar(dadosArray)
return if (dadosArray[0] == 1 && dadosArray[1] == 2 && dadosArray[2] == 3 && dadosArray[3] == 4 && dadosArray[4] == 5
) {
true
} else {
if (dadosArray[0] == 2 && dadosArray[1] == 3 && dadosArray[2] == 4 && dadosArray[3] == 5 && dadosArray[4] == 6
) {
true
} else false
}
}
fun ordenar(lista: IntArray) {
for (i in 0 until lista.size - 1) {
for (j in i + 1 until lista.size) {
if (lista[i] > lista[j]) {
val variableauxiliar = lista[i]
lista[i] = lista[j]
lista[j] = variableauxiliar
}
}
}
}
}
fun main(args: Array<String>) {
val g = Generar()
// ESTO SI SE EJECUTA PARA USTEDES
println(g.jugada("11144"))
}
/* RESPUESTAS
* 1- ¿Cuál es la probabilidad de sacar generala en un tiro ?
* La probabilidad de sacar generala es del 0.08% es decir de 6 casos favorables sobre los 7776 casos posibles.
* Al ser un caso solo es del 0%
*
* 2- ¿Cuál es la probabilidad de sacar poker en un tiro?
* La posibilidad de sacar Poker es del 1.93% es decir de 150 casos favorables sobre los 7776 casos posibles.
* Al ser un caso es del 1.8%.
*
* 3- ¿ Cuál es la probabilidad de sacar full en un tiro?
* La posibilidad de sacar Poker es del 3.86% es decir de 300 casos favorables sobre los 7776 casos posibles.
* Al ser un caso es del 4.6%
*
* 4-¿ Cuál es la probabilidad de sacar escalera
en un tiro?
* La posibilidad de sacar Poker es del 4.63% es decir de 75 casos favorables sobre los 7776 casos posibles.
* Al ser un caso es del 4.4%
*
* 5-¿ Cuál es la probabilidad de sacar nada en un tiro?
**La posibilidad de sacar Poker es del 89.50% es decir 1 caso - la sumatoria de los resultados de todos las probalidades.
* Al ser un caso es del 89.2%
*
* Repositorio GitLab:
* */
import java.util.*
class TirarDados {
// Declaramos la propiedad caras de tipo entero
// Declaramos la propiedad caras de tipo entero
var caras = 0
// Declaramos el método tirar, el mismo devuelve un
// número al azar entre 1 y el valor de caras.
// Declaramos el método tirar, el mismo devuelve un
// número al azar entre 1 y el valor de caras.
fun tirar(): Int {
val rand = Random()
return rand.nextInt(caras) + 1
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment