Pesquisar este blog

Livros Recomendados

Mostrando postagens com marcador Kotlin. Mostrar todas as postagens
Mostrando postagens com marcador Kotlin. Mostrar todas as postagens

quarta-feira, 24 de março de 2021

URI (BEECROWD) - 1001 - Extremamente Básico - Iniciante - Kotlin e Ruby

Plataforma: URI (BEECROWD)
Problema1001


Linguagens: Kotlin e Ruby

Enunciado:
Leia 2 valores inteiros e armazene-os nas variáveis A e B. Efetue a soma de A e B atribuindo o seu resultado na variável X. Imprima X conforme exemplo apresentado abaixo. Não apresente mensagem alguma além daquilo que está sendo especificado e não esqueça de imprimir o fim de linha após o resultado, caso contrário, você receberá "Presentation Error".

Solução:

Aqui soluciono o problema 1001, que solicita a soma de dois inteiros informados pelo usuário na entrada padrão, nas linguagens Kotlin e Ruby. Os códigos são bastante simples e intuitivos.

Código em Kotlin:

Quem vê o código Kotlin já nota: Kotlin é uma linguagem para a JVM totalmente interoperável com Java. Portanto, sua sintaxe é bastante familiar para quem já usa Java. Usa-se imports quando necessário chamar alguma biblioteca, como fizemos com java.util.*, já que usamos o objeto Scanner para fazer a leitura de dados da entrada padrão. A função principal é a main e dentro do código foram declaradas três variáveis com "val". Elas podiam ser criadas com "var", no entanto, não seria o mais correto. Utilizamos "val" quando o valor não será alterado, e "var" quando ele pode ser modificado. Os métodos sc.next servem para que a referência ao objeto do tipo Scanner (sc) faça a leitura dos valores de entrada. Os valores são recebidos como referências a Strings. No comando de escrita (println), utilizamos "ln" no final para indicar que deve criar uma nova linha (ln significa line new) após o último caractere. Por fim, para fazer a soma de a e b, primeiro precisamos fazer o cast (a conversão explícita), pois ambos foram lidos e atribuídos como String. Essa conversão é feita com o método toInt(). Assim é possível somar os valores e imprimir no comando println.

import java.util.*
fun main(args: Array<String>) {
    val sc = Scanner(System.`in`);
    val a: String = sc.next();
    val b: String = sc.next();
    println("X = " + (a.toInt() + b.toInt()));
}

Código em Ruby:

Embora Kotlin seja uma linguagem de programação simples, a solução em Ruby fica bem menor. Aqui, para ler os valores e já armazená-los como inteiro, basta utilizar gets.to_i. O "to_i" já faz a conversão para inteiro (to_i significa to int ou para int). Assim, x recebe a soma entre a e b e o comando puts imprime o resultado. Simples, não?

a = gets.to_i 
b = gets.to_i
x = a + b
puts "X = #{x}"

URI (BEECROWD) - 1000 - Hello World! - Iniciante - Kotlin e Dart

Plataforma: URI (BEECROWD) 

Problema1000

Linguagens: Kotlin e Dart

Enunciado:

O seu primeiro programa em qualquer linguagem de programação normalmente é o "Hello World!". Neste primeiro problema tudo o que você precisa fazer é imprimir esta mensagem na tela.

Solução:

Código em Kotlin: Cria-se uma função main com um array de strings como argumento (args). Este array não será utilizado, ele serve para parâmetros na linha de comando, quando o programa é executado dessa forma. Como nosso exercício só exige a impressão de um texto, não utilizamos este parâmetro. No corpo da função main acrescentamos o comando println (o "ln" é de line new, realizando quebra de linha automaticamente após a impressão do texto). Não se pode esquecer do ponto e vírgula no final da instrução.

fun main(args: Array<String>) {
    println("Hello World!");
}

Código em Dart: basta criar a função main, com tipo de retorno void, e no bloco da função utilizar o comando print(), com o parâmetro "Hello World!". A quebra de linha acontece automaticamente, é só fazer isso e seu código já será aceito! Aqui também não se pode esquecer do ponto e vírgula no final do comando print().

void main() {
    print("Hello World!");
}

Postagem em destaque

URI (BEECROWD) - 2158 - Helping Uncle Cláudio (Ajudando o Tio Cláudio) - Matemática - C, C++ e Haskell

Buenas! Estou aqui mais uma vez para resolver um problema de Matemática! Agora tenho resolvido alguns dessa categoria, pra que vocês possam ...

Postagens mais visitadas