Рубрики
Без рубрики

Artende программный Преступник

Copipastear TODOS LOS EJEMPLOS SE PUEDEN COPAR Y PEGAR PARA EJECUTARLOS DIETUTAMESE! … Теги с NIM, Python, Teadercript, испанском.

  • TODOS LOS EJEMPLOS SE PUEDEN COPAR Y PEGAL PARA EJECUTARLOS DIETUTAMESE!

Игровая площадка Para Particar Tene El Navegador Web.

Instalar En La ComputaDora.

эхо Сарве Para Imprimir Por La Terminal Los Argageos

echo "Hola Mundo"

Otro ejemplo

echo 1, true, 2.0, "OwO", false, -9, 0

Los Comentarios SON TESKO INGRODORADO POR EL PROMPORTA, ES DECIR EL TEAKEO EN Comentario No Sizee Para La Commentadora, USAUSUMENTEE SE USA PARA DECUSTIONAR EL CODIGO PARA QUE LAS человек Lo PuEnan entender mejor.

Comentario es una linea que empieza con # .

# Esto es un comentario
echo "Hola" , " ", "Mundo" # Otro comentario

Утверждать Covueba Que El Aurgino Evalua Verdadero.

это Sirve Para Comprobarar El Tipo de Algo, SE USA DE LA FORMA доблесть Tipo Отказ

assert 42 is int
assert 3.14 is float
assert true is bool
assert "x" is string
assert 'z' is char

Переменные LAS SE TEANAN CON вар , Пусть , const Отказ

var nombre = "valor"

Mas Ejemplos:

var a = 42

var
  b = "Para no repetir tanto el 'var' "
  c = "podes agrupar las variables asi"
  d = true

let e = 666 +
  420 *
  42
Нет вар Si. Нет Нет
Si. позволять Si. Si. Нет
Si. конститут Нет Si. Si.

Дивизион Entera США El Operador девочка

Modulo USA EL Operador мод

echo 1 + 2
echo 2 - 1
echo 2 * 2
echo 4 / 2
echo 4 div 2
echo 4 mod 2

Науэдит Usar Numeros Binarios, шестнадцатеричные моменты, окталеты и т. Д.

echo 0b1100  # Binario
echo 0xFFFF  # Hexadecimal
echo 0o777   # Octal

# _ es ignorado, es util para numeros grandes
echo 2_000_000

# Se comprobara que este numero siempre sea Positivo.
echo 0.Positive  # >= 0

# Se comprobara que este numero siempre sea Natural.
echo 1.Natural   # > 0

Control de frujo con blwes Если ELIF еще

if 9 > 0:
  echo "Ejemplo"
var condicional = true

if condicional:
  echo 42
else:
  echo 0

ООН Если ELIF еще ru ru una linea es en “Operador Ternario”

var condicional = true

if condicional: echo 42 else: echo 0

Mas ejemplos

var valor = 5

if valor == 0:
  echo "valor es cero"
if valor < 0:
  echo "valor es negativo"
else:
  echo "valor es positivo"

Case Switch ES похож на ООН, если ELIF еще Pero Funciona Distinto. Tambien Puede Teaner Un еще:

var valor = "gato"

case valor
of "perro":
  echo "valor es perro"
of "gato", "gatito":
  echo "valor es gato"
else:
  echo "valor es otro animal"

Case Switch Puede Conicidir Con Multiply Perdiciones 1, 2, 3, 4, 5: El Ejemplo de abajo.

Переключатель Case Puede Usar Элиф COMO SE HUSDA ABAJO.

var valor = 42

case valor
of 0:
  echo "valor es cero"
of 1, 2, 3, 4, 5:
  echo "valor esta entre 0 y 5"
of 6..9:
  echo "valor esta entre 6 y 9"
elif valor < 0:
  echo "valor es negativo"
else:
  echo "valor es otro numero"

Blwees de codigo con un nuevo contexto (область применения) SE CREAN CON блокировать

let ejemplo = "Afuera del block"

block:
  let ejemplo = "Adentro del block"
  echo ejemplo

echo ejemplo

Tambien Puede Usarse Para Evaluar Codigo ООН доблесть

let valor = block:
  let a = 1
  let b = 2
  a + b

assert valor == 3

Blwees PueDen Tener un Nombre Etiqueta.

Se jude salir explicatamente de un bloque usando ломать

echo "Afuera del block"

block el_bloque_loco:
  echo "Adentro del block"
  break el_bloque_loco

echo "Afuera del block"

Эль-Букл для Сарве Para Iterar ООН доблесть, PARA Applicar Algun Tipo de logica a Los Thents Индивидуальный.

для Se judede Interrumpir Con Перерыв Tambien.

for i in 5..9:
  echo i
  if i == 7: 
    break

Otro ejemplo

for item in [1, 2, 3, 4, 5, 6]:
  if item mod 2 == 0:
    echo "item es par"
  else:
    echo "item es impar"

Эль-Букл в то время как es Похожие al для , Перо Сарве Para Repetir Bloque de Codigo, Siempre Y Cuando OU Argento de Condicion Booleana Sea Verdadera.

в то время как Se judede Interrumpir Con Перерыв Tambien.

var z = 0
while z < 9:
  echo z
  inc z

readfile Сарве Para Leer Archivos.

WeightFile Сарве Para Escribir Archivos.

writeFile("/tmp/ejemplo.txt", "Los datos van aca.")
var contenido = readFile("/tmp/ejemplo.txt")
echo contenido

Генс Сирве Para Leer Primations De Entorno.

Путенв SIRVE PARA ESCRIBIR Primations de Entorno.

import os
putEnv("EXAMPLE", "value")
echo getEnv("EXAMPLE")

Proc DECKARA UNA NUEVA FUNCION, Los Argageos Llevan Su Tipo Y El Tipo de Retorno Va Al Final.

proc nombre(argumento0: int, argumento1: int): int =
  argumento0 + argumento1

Tambien SE Puede Escribir Enna Linea

proc nombre(argumento0: int, argumento1: int): int = argumento0 + argumento1

Джее Нет реторна Ningun Tipo

proc nombre(argumento0: int, argumento1: int) = 
  echo argumento0 + argumento1

Peede no tomar ningun puranto

proc nombre(): int = 
  return 42

Una Funcion Sin Nombre Es Una Funcion Anonima

proc (argumento0: float): float = argumento0 + 1.0

Mas ejemplos

proc saludar() = 
  echo "Hola Mundo"

Funcion que Retorna Mouseas Cosas Juntas

proc retornaMuchasCosas(): auto =
  result = (clave0: 9, clave1: true, clave2: "texto")

Funcion Flecha (функции стрелки) ESTA EN El Modulo de Azucar

Импорт Importa Modulos de la libreseria estandard, o de terceros.

import sugar

let saludar = (argumento: int) => echo "Hola ", argumento

Otro Ejemplo, Перо грех аргумент

import sugar

let saludar = () => echo "ejemplo"

Функция стрелки много- линьена

import sugar

let ejemplo = (c: int) => (
  let a = 1
  let b = 2
  a + b + c)

assert ejemplo(42) == 45

PARA DARLE MAS ETTRUCTURA PUEDES CREAR FUNCION GUNCION Главная , No Es Onblatorio, Перо ES ReComendado.

Когда ООН Если Pero que se evalua durante la compilacion.

Исмаинмодуль es правда CuAndo Es El Modulo Основная Que Se Esta Ejecutando.

proc main() =
  echo "Hola Mundo"

when isMainModule:
  main()

Programa de Conversion de Escalas de Temperatura

proc main(celsius: int) =
  let kelvin = celsius + 273
  let fahrenheit = float(celsius) * 1.8 + 32.0
  echo "Temperatura Celsius: ", celsius
  echo "Temperatura Fahrenheit: ", fahrenheit
  echo "Temperatura Kelvin: ", kelvin

when isMainModule:
  main(celsius = 22)

Base64 Sirve Para Conventer Base64.

import base64
let datos = encode("Hello World")
assert datos == "SGVsbG8gV29ybGQ="

браузеры Сарве Para abrir una direccion web en el navegador web.

import browsers
openDefaultBrowser("https://nim-lang.org")

алгоритм Contiene Algoritmos Comunes, Como Ser La Busqueda Binaria.

import algorithm
assert binarySearch([0, 1, 2, 3, 4], 4) == 4
assert binarySearch([0, 1, 2, 3, 4], 2) == 2

Json.

JSON Tiene Todo Lo Necesario Para Manipular Datos Json.

JSON SE ESCRIBE Lвраль En el Codigo, Эль Оперид % * SE Encarga de “entender” El Json.

import json

let datos = %*{
  "clave": "valor",
  "otro": 42,
  "ultimo": 2.5
}

assert datos is JsonNode
echo datos.pretty

writeFile("/tmp/ejemplo.json", datos.pretty)
echo parseFile("/tmp/ejemplo.json")

editdistance Реализация La Distancia De Levenshtein.

import std/editdistance
assert editdistance("Gatito", "Patito") == 1

Случайные Реализация Regive DE Numeros Al Azar Y Utilidades de Random.

import random
randomize()

let num = rand(99)  # Numero al azar entre 0 y 99
assert num in 0..99

let colores = ["rojo", "verde", "azul"]
let alazar = sample(colores)
assert alazar in colores

httpclient Tiene un Cliente http.

import httpclient
var cliente = newHttpClient()
echo cliente.getContent("http://nim-lang.org")

Puedes Crag TUS пропионов Типос Усандо Тип Отказ

Los Nombres de los Thetos Deben Usar Siempre La Primer Letra En MayusCula.

ESTE ES ES TIPO Vacio Sin Ningun Atributo

type Nombre = object

Este Tipo Tiene Atributos

type Nombre = object
  atributo: string  # Atributo de tipo string
  otro: int         # Atributo de tipo int

Tambien SE Puede Agrupar Tipos en Bloque On тип

type 
  TipoVacio = object

  Nombre = object
    atributo: string  # Atributo de tipo string
    otro: int         # Atributo de tipo int

  Otro = object
    foo: bool         # Atributo de tipo bool

ООН Tipo Puede Heredar de Otro Tipo Usando объект

TODOS LOS TIPOS HEREDAN DE ООН TIPO RAIZ, Que es la madre de todos los tipos, Эль ОбъЕТО РУЗ ЭС Rootobj Отказ

En Este Ejemplo Гатито Hereda de Животное , СУ ВЕЗ Животное Hereda de Rootobj Отказ

type 
  Animal = ref object of RootObj

  Gatito = ref object of Animal

PARA Tener Funcionalidades en los objetos se ouchede darle funciones, SE LE OTORGAN FUNCALIDIDAD USANDO Я: objeto , Я: objeto Siempre Debe Ser El Primer ArugeO.

type 
  Animal = ref object of RootObj
  Gatito = ref object of Animal

proc miau(self: Gatito) =
  echo "Miau Miau"

let gato = Gatito()
gato.miau()

PARA DARLE Valores POR DEFECTO LOS ATRIBUTOS DE ALGUN TIPO SE PUEDE USAR ООН Конструктор ООН, Конструктор ООН ES Simplemente Una Funcion Que Retorna El Tipo.

POR Condencion Usualmentede SE NOMBRA AL CONDORDOR COMO “NEW + TIPO” O “init + Tipo”, es decir. пункт Эль Тип Гатито Deberia Ser newgatito () О initgatito ()

type 
  Animal = ref object of RootObj
  Gatito = ref object of Animal
    edad: int
    nombre: string

proc newGatito(edad: int, nombre: string): Gatito =
  Gatito(edad: edad, nombre: nombre)

proc miau(self: Gatito) =
  echo "Miau Miau"

let gato = newGatito(edad: 2, nombre: "Bastet")
assert gato.edad == 2
assert gato.nombre == "Bastet"
gato.miau()

Volvamos a Darle Mas estructura de programa

type 
  Animal = ref object of RootObj
  Gatito = ref object of Animal
    edad: int
    nombre: string

proc newGatito(edad: int, nombre: string): Gatito =
  Gatito(edad: edad, nombre: nombre)

proc miau(self: Gatito) =
  echo "Miau Miau"

proc main(edad: int, nombre: string) =
  let gato = newGatito(edad: edad, nombre: nombre)
  assert gato.edad == 2
  assert gato.nombre == "Bastet"
  gato.miau()

when isMainModule:
  main(edad = 2, nombre = "Bastet")

COLECIONES SIRVEN PARA AGRUPAR Valores Doctro de un Mismo Contendedor.

Нет Veremos CADA UNA EN DESTALLE POR QUE ESO YA ES PARTE DE LA LIBERERIA ESTANDARD, PERO AQUI ESTA ESTA RESUMEN RESTOMEN RAIDO DE LOS CONTENDENES:

Гомогенео 0 Si. Эстатика Эстатика множество
Гомогенео Доблесть Нет Динамика Динамика набор
Гомогенео 0 Si. Динамика Динамика осевать
Гомогенео Клав Нет Динамика Динамика табла
Гетерогенео 0 / клав Si. Эстатика Эстатика тупла
Гетерогенео Клав Нет Динамика Динамика Json.
Гомогенео Клав Нет Динамика Динамика BTRES.
Гомогенео Клав Нет Динамика Динамика Critbits.
  • Si Necesitas Una lista США Seq Отказ
  • Si Necesitas un diccionario Mapeado USA Таблица Отказ
  • Si Necesitas Tipos Mezclados США JSON Отказ
  • Si Necesitas Retornar Muchos Valores de Una Funcion США кортеж Отказ

Существуют Мас, содержащие Перо Эсс Сын Лос Мас Комуны.

Tisten Mas Contenedes En Paquees de Terceros.

ООН Сердитор НЕТ ES MAS QUE UN TIPO, PUEDES CREAR TUS пропионов консервации Personalizados.

Puede Correr El Codigo En el Navegador Web, Hay Modulos En La Librisia Estandard Orientados A La Web.

Los Modulos Que Solo Funcionan Para JavaScript, Су NOMBRE Comienza Con “JS”, POR EJEMPLO jsfetch , jsre , jsbigints и т. Д. И т. Д.

Tambien Puede Correr El Codigo En Nodejs, Con Paquees de Terceros.

… y en custquier contexto que tenga un интерпретировать de javascript.

👑

Оригинал: “https://dev.to/juancarlospaco/aprende-a-programar-con-nim-10nd”