PSeInt
Se trata de una herramienta enfocada a la enseñanza y aprendizaje de programación, se emplea un lenguaje algorítmico muy sencillo de utilizar. Lo puedes instalar en Linux, Windows, y Mac.
Al inicio te pedirá que lenguaje algorítmico usarás (te muestra una lista). A mi parecer es bastante sencillo e intuitivo. Ideal para quienes están o quieren aprender a programar.
Link
http://pseint.sourceforge.net/slide/pseint.html
http://pseint.sourceforge.net/
Mostrando entradas con la etiqueta programar. Mostrar todas las entradas
Mostrando entradas con la etiqueta programar. Mostrar todas las entradas
viernes, 4 de julio de 2014
lunes, 2 de septiembre de 2013
Programando en C++ ... no.2
1. Clases, crear una clase llamada "Fecha" y mostrar sus propiedades.
#include "iostream.h"
#include "stdio.h"
#include "time.h"
#include "stdlib.h"
class Fecha{
private:
int dia;
int mes;
int anyo;
public:
Fecha();
virtual ~Fecha();
Fecha(int dia,int mes, int anyo){
this->dia=dia;
this->mes=mes;
this->anyo=anyo;
}
void setDia(int dia){this->dia=dia;}
void setMes(int mes){this->mes=mes;}
void setAnyo(int anyo){this->anyo=anyo;}
int getDia(){return this->dia;}
int getMes(){return this->mes;}
int getAnyo(){return this->anyo;}
};
Fecha::Fecha(){
cout<<"Se ha creado objeto Fecha"<<endl;
}
Fecha::~Fecha(){cout<<"Se ha destruido objeto Fecha"<<endl;}
int main(){
Fecha fecha(18,12,1981);
cout<<"dia: "<<fecha.getDia()<<" mes: "<<fecha.getMes()<<" anyo: "<<fecha.getAnyo()<<endl;
system("PAUSE");
return 0;
}
#include "iostream.h"
#include "stdio.h"
#include "time.h"
#include "stdlib.h"
class Fecha{
private:
int dia;
int mes;
int anyo;
public:
Fecha();
virtual ~Fecha();
Fecha(int dia,int mes, int anyo){
this->dia=dia;
this->mes=mes;
this->anyo=anyo;
}
void setDia(int dia){this->dia=dia;}
void setMes(int mes){this->mes=mes;}
void setAnyo(int anyo){this->anyo=anyo;}
int getDia(){return this->dia;}
int getMes(){return this->mes;}
int getAnyo(){return this->anyo;}
};
Fecha::Fecha(){
cout<<"Se ha creado objeto Fecha"<<endl;
}
Fecha::~Fecha(){cout<<"Se ha destruido objeto Fecha"<<endl;}
int main(){
Fecha fecha(18,12,1981);
cout<<"dia: "<<fecha.getDia()<<" mes: "<<fecha.getMes()<<" anyo: "<<fecha.getAnyo()<<endl;
system("PAUSE");
return 0;
}
Links:
Libro C/C++/Java
domingo, 9 de junio de 2013
Programando en Java ... no. 1
1. Recorrer un directorio, si existe recorre y cuenta el número de archivos y directorios.
import java.io.File;
import java.io.IOException;
import static java.lang.System.out;
public class Ejemplos{
public static final String DIRECTORIO="/home/usuario/ejemplos";
public static void main(String[] args)throws IOException {
File directorio=new File(DIRECTORIO);
int cont=0;
if(directorio.exists()){
out.println("existe directorio");
if(directorio.isDirectory()){
out.println("estamos en: "+directorio.getAbsolutePath());
File subDir=new File(directorio.getAbsolutePath());
File[] archivos=subDir.listFiles();
out.println("\tArchivos:");
for(int i=0;i<archivos.length;i++){
out.println(archivos[i].getName());
cont++;
}//fin for
}//fin if
}//fin if
out.println("no. total: "+cont);
}
}
4. Recorrer directorio
import java.io.IOException;
import java.io.File;
import java.util.Date;
public class Ejemplos{
public static final String DIRECTORIO="C:\\Programas\\Ejemplos";
public static void main(String[] args)throws IOException {
File directorio=new File(DIRECTORIO);
if(directorio.exists()){
System.out.println("existe el directorio: "+directorio.getAbsolutePath());
File subDir=new File(directorio.getAbsolutePath());
File[] archivos=subDir.listFiles();
for(int i=0;i<archivos.length;i++){
if(archivos[i].canRead() || archivos[i].canWrite() || archivos[i].canExecute()){
System.out.println("se tienen todos los permisos: "+archivos[i].getName());
if(new File(archivos[i].getName()).isFile()){
System.out.println("es archivo: "+archivos[i].getName()+" ultima modificacion: "+new Date(archivos[i].lastModified()));
}
if(new File(archivos[i].getName()).isDirectory()){
System.out.println("es directorio: "+archivos[i].getName()+" ultima modificacion: "+new Date(archivos[i].lastModified()));
}
//ver solo archivos txt
if(archivos[i].getName().endsWith("txt")){
System.out.println("es archivo txt: "+archivos[i].getName()+" ultima modificacion: "+new Date(archivos[i].lastModified()));;
}
}else{
System.out.println("no se tienen los permisos necesarios: "+archivos[i].getName());
}
}//fin for
}//fin if
}//fin main
}
import java.io.File;
import java.io.IOException;
import static java.lang.System.out;
public class Ejemplos{
public static final String DIRECTORIO="/home/usuario/ejemplos";
public static void main(String[] args)throws IOException {
File directorio=new File(DIRECTORIO);
int cont=0;
if(directorio.exists()){
out.println("existe directorio");
if(directorio.isDirectory()){
out.println("estamos en: "+directorio.getAbsolutePath());
File subDir=new File(directorio.getAbsolutePath());
File[] archivos=subDir.listFiles();
out.println("\tArchivos:");
for(int i=0;i<archivos.length;i++){
out.println(archivos[i].getName());
cont++;
}//fin for
}//fin if
}//fin if
out.println("no. total: "+cont);
}
}
2. Unir dos vectores (Ay B) en una lista
import java.util.Scanner;
import java.util.ArrayList;
import java.util.List;
import java.util.Arrays;
import java.util.Collections;
public class Ejemplos{
public static void main(String[] args) {
Scanner in=new Scanner(System.in);
int tam=0;
int[] vectorA=null;
int[] vectorB=null;
List<Integer> listaC=new ArrayList<Integer>();
System.out.println("tamanyo del vector: ");
tam=in.nextInt();
vectorA=new int[tam];
vectorB=new int[tam];
int valorA=0,valorB=0;
System.out.println("llenamos vector A");
for(int i=0;i<vectorA.length;i++){
System.out.println("valor no. "+(i+1)+" :");
valorA=in.nextInt();
vectorA[i]=valorA;
}
Arrays.sort(vectorA);
System.out.println("llenamos vector B");
for(int j=0;j<vectorB.length;j++){
System.out.println("valor no. "+(j+1)+" :");
valorB=in.nextInt();
vectorB[j]=valorB;
}
Arrays.sort(vectorB);
System.out.println("llenamos lista C");
for(int a:vectorA){
listaC.add(a);
}
for(int b:vectorB){
listaC.add(b);
}
Collections.sort(listaC);
System.out.println(listaC);
}
}
3. Uso de enumeraciones
import java.util.List;
import java.util.ArrayList;
import static java.lang.System.out;
public class Ejemplos{
public static void main(String[] args) {
Soldado steve=new Soldado();
Soldado john=new Soldado();
RangoSoldado rango1, rango2;
steve.setNombre("Steve Rogers");
steve.setEdad(28);
steve.setRango(RangoSoldado.CAPITAN);
john.setNombre("John Walker");
john.setEdad(30);
john.setRango(RangoSoldado.TENIENTE);
rango1=steve.getRango();
rango2=john.getRango();
out.println("Steve: "+rango1.getTitulo());
out.println("John: "+rango2.getTitulo());
List<Soldado> listaS=new ArrayList<Soldado>();
listaS.add(steve);listaS.add(john);
for(Soldado soldado: listaS){
out.println("nombre: "+soldado.getNombre()+" ,edad: "+soldado.getEdad()+" ,rango: "+soldado.getRango());
}
}
}
class Soldado{
public Soldado(){}
public Soldado(String _nombre,int _edad, RangoSoldado _rango){
nombre=_nombre;
edad=_edad;
rango=_rango;
}
private String nombre;
private int edad;
private RangoSoldado rango;
public void setNombre(String _nombre){
nombre=_nombre;
}
public void setEdad(int _edad){
edad=_edad;
}
public void setRango(RangoSoldado _rango){
rango=_rango;
}
public String getNombre(){
return nombre;
}
public int getEdad(){
return edad;
}
public RangoSoldado getRango(){
return rango;
}
}
enum RangoSoldado{
RASO("raso"),CABO("cabo"),TENIENTE("teniente"),CAPITAN("capitan");
public String titulo;
RangoSoldado(String _titulo){
titulo=_titulo;
}
RangoSoldado(){
}
public String getTitulo(){
return titulo;
}
}
4. Recorrer directorio
import java.io.IOException;
import java.io.File;
import java.util.Date;
public class Ejemplos{
public static final String DIRECTORIO="C:\\Programas\\Ejemplos";
public static void main(String[] args)throws IOException {
File directorio=new File(DIRECTORIO);
if(directorio.exists()){
System.out.println("existe el directorio: "+directorio.getAbsolutePath());
File subDir=new File(directorio.getAbsolutePath());
File[] archivos=subDir.listFiles();
for(int i=0;i<archivos.length;i++){
if(archivos[i].canRead() || archivos[i].canWrite() || archivos[i].canExecute()){
System.out.println("se tienen todos los permisos: "+archivos[i].getName());
if(new File(archivos[i].getName()).isFile()){
System.out.println("es archivo: "+archivos[i].getName()+" ultima modificacion: "+new Date(archivos[i].lastModified()));
}
if(new File(archivos[i].getName()).isDirectory()){
System.out.println("es directorio: "+archivos[i].getName()+" ultima modificacion: "+new Date(archivos[i].lastModified()));
}
//ver solo archivos txt
if(archivos[i].getName().endsWith("txt")){
System.out.println("es archivo txt: "+archivos[i].getName()+" ultima modificacion: "+new Date(archivos[i].lastModified()));;
}
}else{
System.out.println("no se tienen los permisos necesarios: "+archivos[i].getName());
}
}//fin for
}//fin if
}//fin main
}
viernes, 10 de mayo de 2013
Un vistazo a ... Ruby
Update:
Ruby es: Un lenguaje de programación dinámico y de código abierto centrado en la simplicidad y la productividad. Tiene una sintaxis elegante que es natural de leer y fácil de escribir.
Instalamos:
sudo apt-get install ruby-full
Una vez instalado abrimos una terminal y tecleamos:
ruby -v
¿Cómo guardo un programa en Ruby?
nombrePrograma.rb
¿Cómo ejecuto un programa (desde terminal)?
ruby nombrePrograma.rb
Si usas Windows puedes descargar e instalar http://rubyinstaller.org/
1. Introducir datos desde teclado
introduceDatos.rb
puts "Teclea un nombre: "
STDOUT.flush
nombre=gets.chomp
puts "Hola #{nombre}"
2. Tabla de multiplicar del 1 al 10
tabla.rb
for n in 1..9
puts "tabla de multiplicar del no. #{n}\n"
for n2 in 1..10
puts "#{n} x #{n2} = #{n*n2}\n"
end
end
3. Crear una clase
Persona.rb
class Persona
def initialize(nombre,edad)
@nombre=nombre
@edad=edad
end
def verDatos()
puts "Hola #{@nombre} tienes #{@edad} años"
end
end
persona=Persona.new("Horacio",35)
persona.verDatos()
4. Ejecutar un bat o un sh
ejecuta.rb
=begin
comentariops
multilínea en
Ruby
=end
#si es Linux
system("sh archivo.sh")
#si es Windows
system("archivo.bat")
5. Comprehensiones, http://www.andypatterns.com/index.php/blog/ruby-vs-python-list-comprehensions/
comprehensiones.rb
arreglo=[1,4,5,3,2,9,54,33,90,210,0,21]
puts arreglo.map {|x| x!= 0 ? x * 3 : nil}.compact
http://tryruby.org/levels/3/challenges/2 este sitio es para probar e iniciar en Ruby.
domingo, 13 de noviembre de 2011
¿Cómo aprender a programar?
- Conoce gente que sepa de programación
- Busca información, libros, apuntes, blogs, sitios especializados,etc.
- Comparte tus conocimientos (aunque sean limitados) siempre alguien te podrá corregir si te equivocas
- Siempre es bueno tener tu propio "banco de datos" donde almacenar tus apuntes, tus notas, etc.
- Leer ayuda de mucho, también la lógica y las matemáticas
- Haz notas de lo que no entiendas, busca términos que te confundan o que no entiendas claramente
- Preguntar es bueno, aunque no siempre esperes que te contesten y resuelvan tus problemas
- El Face y Twitter no son solo para ver mensajes sin contenido ni sustancia, también pueden servir para encontrar buena información y conocer gente
- Si encuentras código no es bueno tan solo copiar y pegar,estudialo no todo el código que encuentras en internet sirve
- Y lo más importante, el programador se hace con la práctica no en las aulas
Un ejemplo muy sencillo. Sumar todos los valores de un arreglo
//defino un arreglo con números
int[] numeros={3,4,5,6,7,8,9};
int i,suma=0;
//bucle que va sumando todos los valores del arreglo
for(i=0;i<numeros.length;i++){
suma+=numeros[i];
}
//muestro la suma de todos los valores
System.out.println("Suma de todos los números: "+suma);
Suscribirse a:
Entradas (Atom)
Jai un lenguaje de programación inspirado en C++
Hoy hablaremos de un nuevo lenguaje de programación llamado Jai . Se trata de un lenguaje de programación que está desarrolland...
-
Progress ABL es un lenguaje de programación vinculado al entorno Progress OpenEdge , su base de datos y las utilidades que lo rodean. Es s...
-
Claude Code es una herramienta de inteligencia artificial creada por Anthropic que funciona directamente en la terminal. Sirve para acele...
-
Ionic es un framework que permite crear aplicaciones móviles híbridas. Éstas aplicaciones son las que emplean tecnologías como HTML, CSS ...
Etiquetas
- .NET
- 100
- 2026
- abl
- abstract
- abstractas
- activemq
- ada
- agente
- agile
- akka
- algoritmos
- almacenados
- alternativa
- android
- angular
- angularjs
- apache
- apache-camel
- apache-mesos
- apache-poi
- apex
- api
- appserv
- aprender
- aprender java
- aprender jsf
- aprender python
- aprendizaje
- area
- args
- aserciones
- asm
- asp
- assembly
- assert
- automatización
- awk
- aws
- ayuda
- azure
- backend
- ballerina
- base de datos
- bases de datos
- bash
- bat
- bd
- beam
- beef
- bigquery
- biotipo
- bitacora
- bitcoin
- bleam
- blockchain
- blog
- bq
- bucket
- bundle
- c
- c#
- c++
- c3
- calculadora
- calculo
- camel
- case
- cassandra
- celsius
- ceylon
- cgi
- charp
- charts
- chatgpt
- cherrypy
- chino
- cibersecurity
- clang
- clases
- claude code
- cli
- cliente
- clojure
- closures
- cloud
- cmd
- cmd.bat
- coalesce
- cobol
- codeblocks
- codeigniter
- codes
- código
- códigos
- comando
- comandos
- commit
- comparativa
- compartir
- compilador
- compile
- composer
- comprobación
- computación
- computing
- conceptos
- concurnas
- concurrente
- condicionales
- conectividad
- configuration
- consejos
- const
- constantes
- consultas
- contenedores
- contenedores web
- control de versiones
- conversion
- conversor
- convertidor
- copilot
- core
- corsera
- couchdb
- cpan
- cplus
- cpp
- cpp-httplib
- crear
- cripto
- criptomoneda
- crow
- CrowdStrike
- crystal
- csharp
- cshtml
- css
- css3
- csv
- cte
- curso
- d
- dancer2
- dapper
- datastage
- datos
- deepseek
- delphi
- deploy
- desarrollo
- determinar
- dev c++
- developer
- devops
- días
- directivas
- disparejo
- distribuido
- django
- dlang
- doc
- docker
- docker-swarm
- dockerfile
- document
- documentación
- documental
- dotnet
- driver
- dsl
- dylan
- easyphp
- eclipse
- eclipse foundation
- eclipse y scala
- economica
- editor
- eip
- ejb
- ejecutar
- ejemplos
- ejemplos cpp
- ejemplos de csharp
- ejemplos de scala
- ejemplos java
- ejemplos python
- ejmeplo
- elixir
- elixir.
- en línea
- encapsulación
- ensamblador
- entityframework
- enum
- erlang
- error
- errores
- es6
- escribir
- esproc
- esprocsqpl
- estructuras
- ethereum
- euler
- excel
- excepciones
- expando
- export
- express
- externa
- f#
- faces
- fahrenheit
- feliz año
- fetch
- filosofía
- firebase
- flask
- foreach
- framework
- fsharp
- funcional
- funciones
- functions
- futuro
- gcc
- gcp
- geany
- gem
- gemfile
- generador de proyectos
- genie
- gestor de proyectos
- github
- glassfish
- gleam
- gnu
- go
- golang
- google web toolkit
- gosu
- graalvm
- gradle
- grain
- grapes
- graphql
- graven
- grok
- grooscript
- groovy
- groovyeConsole
- grpc
- gson
- gui
- gwt
- gwtext
- hashicorp
- hashmap
- haskell
- haxe
- headers
- helidon
- helm
- herencia
- hibernate
- hola
- hola en ceylon
- horoscopo
- HTA
- html
- html5
- http
- http-server
- http/2
- ia
- iaas
- iac
- ibm
- IDE
- ide scala
- if
- ifnull
- imagen
- imc
- import
- importar
- ingeniería
- iniciar glassfish
- iniciar tomcat
- inicio
- inicio en ceylon
- IntelliJ IDEA pycharm
- interface
- interfaces
- interfaz
- interna
- interoperabilidad
- interprete
- interview
- inversión de control
- inyección de dependencias
- ionic
- ios
- jabaco
- jai
- jakartaee
- java
- java swing
- java y ceylon
- JAVA_HOME
- javadoc
- javaee
- javascript
- javaserver
- jax-rs
- jaxb
- jdbc
- jdbi
- jdk
- jdk8
- jee
- jpa
- jpql
- jquery
- jre
- jruby
- jscript
- jsf
- jsni
- json
- juego
- julia
- jvm
- jvm y ceylon
- jython
- k8s
- kafka
- kanban
- katas
- kate
- koltin
- kotlin
- ktor
- kubectl
- kubernetes
- la path
- langchain
- langchain4j
- laravel
- learn
- lectura
- lenguaje
- lenguaje scala
- lenguajes
- let
- leyes
- librería
- libro
- linq
- linux
- list
- lista
- listas
- livescript
- llm
- llvm
- logger
- lua
- macro
- major
- mapas
- mariadb
- maven
- maven y eclipse
- mensajería
- mensajes
- menú
- mercurial
- messagebox
- metaClass
- micronaut
- microsoft
- minilux
- minimal api
- mix
- mobile
- modularidad
- módulo
- mojo
- mojolicious
- mongo
- mongodb
- mono
- monodevelop
- moonbit
- ms-dos
- mu
- mulesoft
- mvc
- mybatis
- mysql
- n8n
- native images
- neo4j
- netbeans
- nexus
- ng
- nicon notify
- nimrod
- nlog
- node
- nodejs
- nomad
- nosql
- notificaciones
- npm
- nube
- nuevo
- nuget
- nullable
- nullif
- numericas
- ocaml
- okhttp3
- ollama
- online
- openai
- openclaw
- opencode
- opendylan
- openedge
- operaciones
- oracel
- oracle
- orientación a objetos
- orm
- otp
- owasp
- paas
- paas iaas
- package
- packages
- padrino
- paradigma
- pascal
- path groovy
- path java
- patrones de coincidencia
- patrones de diseño
- pattern matching
- pdf-parser
- perl
- phoenix
- php
- pl/1
- plot
- plsql
- pom.xml.build.gradle
- poo
- powershell
- pregunta
- problema
- problemas al ejecutar programa en ceylon
- procedimientos
- procedures
- programa
- programacion
- programación
- programador
- programadores
- programar
- programas
- programas java
- programming
- progress
- prompt engineering
- proto
- protobuff
- protocolos
- proyectos maven
- prueba
- pseint
- pubsub
- pulsaciones
- pyramid
- python
- pyzenity
- quarkus
- questions
- r
- rabbitmq
- reactiva
- rebar3
- record
- recursos
- regex
- regiones
- remix
- repl
- replace
- repositorios
- REST
- RESTEasy
- reverse
- romanos
- ruby
- run
- rust
- ruta
- saas
- sanic
- sap
- sas
- sbt
- scala
- scottplot
- scripting
- scripts
- scrum
- sdkman
- security
- seguridad
- semántica
- sentencias
- serilog
- servidor
- shell
- show
- simplej
- sinatra
- singleton
- sintaxis
- sitios
- slim
- sms
- smslib
- soap
- socket.io
- solidity
- solución
- spark
- spl
- spring
- spring framework
- spring-boot
- spyder
- sql
- standard
- storage
- stored
- strawberry
- struts
- style
- svn
- swagger
- swift
- symfony
- system
- tapestry
- tarot
- tdd
- técnicas
- terminal
- terraform
- the maven integration requires that eclipse be running in a jdk
- tiempo
- tips
- tomcat
- top-down
- tornadoweb
- trailer
- tratamiento xml
- triggers
- turbogears
- tutoriales
- type
- typescript
- udemy
- udf
- unitarias
- unsupported
- usar jdk
- uso
- uwamp
- variables
- vba
- vbscript
- ventanas
- verificar
- version
- version_52.0
- versiones
- vertx
- vibecoding
- videojuegos
- vistazo
- visual code
- visual csharp
- visual studio
- vite
- vscode
- vulnerabilidades
- wampserver
- wasm
- web
- web2pybottle
- webapi
- webassembly
- webhooks
- websharper
- websocket
- wildfly
- window
- windows
- windows-services
- wisp
- work-services
- wsl
- WSO2
- xampp
- xml
- xunit
- yaml
- youtube
- zenity
Archivo del blog
-
►
2025
(83)
- ► septiembre (7)
-
►
2024
(58)
- ► septiembre (1)
-
►
2023
(12)
- ► septiembre (1)
-
►
2022
(10)
- ► septiembre (1)
-
►
2021
(26)
- ► septiembre (1)
-
►
2020
(9)
- ► septiembre (2)
-
►
2019
(26)
- ► septiembre (3)
-
►
2015
(24)
- ► septiembre (4)
-
►
2014
(36)
- ► septiembre (1)
-
►
2013
(40)
- ► septiembre (5)
-
►
2012
(46)
- ► septiembre (3)






