Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - Beginner Web

#181
Java / Error en NetBeans JSF
28 Abril 2019, 03:53 AM
Hola a que se debe este error? terminé mi aplicacion web pero me sale todo esto

Warning: This page calls for XML namespace http://primefaces.org/ui declared with prefix p but no taglibrary exists for that namespace.
•   Warning: This page calls for XML namespace http://primefaces.org/ui declared with prefix p but no taglibrary exists for that namespace.
•   Warning: This page calls for XML namespace http://primefaces.org/ui declared with prefix p but no taglibrary exists for that namespace.
•   Warning: This page calls for XML namespace http://primefaces.org/ui declared with prefix p but no taglibrary exists for that namespace.
#182
Java / Problemas servidor tomcat en NetBeans
28 Abril 2019, 00:48 AM
Como soluciono esto?
Esta semana me estaba andando bien pero hoy no se que pasó

Código (java) [Seleccionar]
C:\Users\Ana\Desktop\CalculadoraWeb\nbproject\build-impl.xml:1008: Warning: Could not find file C:\Users\Ana\Desktop\CalculadoraWeb\${libs.PrimeFaces_6.2.classpath} to copy.
BUILD FAILED (total time: 0 seconds)
#183
Hola tengo un arreglo de 10 posiciones donde solo coloque valores en las 4 primeras y quiero recorrer el arreglo pero sin leer los valores por defecto que son los 0, como hago o no se puede?

Código (java) [Seleccionar]
int arreglo[] = new int[10];

        arreglo[0] = 1;
        arreglo[1] = 2;
        arreglo[2] = 3;
        arreglo[3] = 4;

        for (int i = 0; i < arreglo.length; i++) {
            System.out.print(arreglo[i]);
        }
#184
Java / fecha con LocalDate
23 Abril 2019, 07:12 AM
Hola tengo una fecha creada con LocalDate y quiero cambiar su formato por este ejemplo
"Viernes, 4 de Julio de 2004".  :silbar:
#185
Hola, como podría hacer para que las personas que entran a mi perfil no puedan mandarme mensajes privados? o sea bloquear ese cuadro que dice "mensaje" :huh:
#186
Desarrollo Web / aplicacion web en blogger
18 Abril 2019, 09:21 AM
Hola se puede hacer una aplicación como esta http://www.calculopesoideal.com/

usando las herramientas JSF, PrimeFaces y Managed Bean en blogger?

:huh:

#187
hola chicos, como hago para contar los digitos de un numero?
por ejemplo si coloco 0000000000 me devuelva 10 pero sin usar ningun tipo de estructura solo como maximo se puede usar while,do while y for gracias  :laugh:
dato de entrada un entero 000000
dato de salida otro entero 6

:huh:
#188
Bases de Datos / SGA y PGA
14 Abril 2019, 23:19 PM
Que pasa si modifico los valores del SGA  y PGA en la instalacion?  :huh:
#189
Java / bubblesort arraylist
13 Abril 2019, 21:02 PM
Hola como puedo hacer para ordenar un arraylist de objetos por nombre? Intente el metodo de la burbuja pero no pasa nada  :huh:

Código (java) [Seleccionar]
public void ordenar() {
       Persona cambio;
       boolean ordenado = true;
       while (ordenado == true) {
           ordenado = false;
           for (int i = 0; i < personas.size() - 1; i++) {
               if (personas.get(i).getNombre().compareTo(personas.get(i + 1).getNombre()) > 0) {
                   cambio = personas.get(i);
                   personas.set(i, personas.get(i + 1));
                   personas.set(i + 1, cambio);
                   ordenado = true;
               }
           }
       }
   }
#190
Java / Valores de atributos del objeto en null
13 Abril 2019, 16:44 PM
Porque sera que me devuelve todo null o por defecto salvo la fecha?

Código (java) [Seleccionar]
public class Principal {
   
    public static void main(String[] args) {
       
        Persona uno = new Persona("Nombre",15);
       
        IPersonaDAO personaDAO = new PersonaListDAOImp();
        personaDAO.crear(uno);
       
        for(Persona a:personaDAO.obtener()){
            System.out.println("Persona : " + a.getNombre() + ", Edad: " + a.getEdad() + ", Fecha: " + a.getFecha());
        }
    }
}



Incluso al crear el objeto 1 sin parametros  y luego de utilizar los metodos Get y Set me sigue mostrando

null
0
2004-1-1

:huh:
#191
Programación C/C++ / potencias
10 Abril 2019, 06:49 AM
Hola, que algoritmo podria usar para sacar la potencia entre dos numeros  sin usar estrucutras repetitivas? o sea solamente usando estrucuras secuencuales? o alguna funcion similar a pow pero en pseint?
#192
Java / Matrices en Java
6 Abril 2019, 03:13 AM
Hola, estará bien recorrida esta matriz de String? Mi idea es evitar la lectura los espacios que esten en null, soy novata en este mundo del Java

Código (java) [Seleccionar]
   public static void mostrarInformación(String[][] p) {
       int i, j;
       for (i = 0; i < p.length; i++) {
           for (j = 0; j < p[i].length && p[i][j] != null; j++) {
               System.out.println(p[i][j]+"\t");
           }
           if (p[i][0] != null) {
               System.out.println("");
           }
       }
   }
#193
Java / pequeñas dudas de java
4 Abril 2019, 06:54 AM
Hola chicos, como puedo aprender mas rapido Java? que quiere decir cuando creo un metodo dentro de una clase principal como public static void me lo toma cuando lo llamo desde el main de esa clase pero cuando lo declaro como public void no me lo toma?
#194
Bueno tengo un Proyecto llamado ProyectoCelular y otro ProyectoCalculadora, quiero que la clase Celular del Proyecto ProyectoCelular pueda tener los metodos que tiene la clase Calculadora del ProyectoCalculadora ¿Cual es la forma correcta? Tener en cuenta que la clase Celular debe poder hacer uso de los metodos de la clase Calculadora

Código (java) [Seleccionar]

package principal;

import clases.Celular;
import clases.Calculadora;

public class ProyectoCelular {

   public static void main(String[] args) {
       // Esto es el main todavia no lo terminé
       
   }
   
}


Código (java) [Seleccionar]
package clases;

import java.lang.Math.*;

public class Calculadora {

   private String marca, modelo, sistemaOperativo, versionSistemaOperativo;

   public Calculadora(String marca, String modelo, String sistemaOperativo, String versionSistemaOperativo) {
       this.marca = marca;
       this.modelo = modelo;
       this.sistemaOperativo = sistemaOperativo;
       this.versionSistemaOperativo = versionSistemaOperativo;
   }

   /**
    *
    * @param a
    * @param b
    * @return La suma entre a y b
    */
   public float sumar(float a, float b) {
       return a + b;
   }

   /**
    *
    * @param a
    * @param b
    * @return La resta entre a y b
    */
   public float restar(float a, float b) {
       return a - b;
   }

   /**
    *
    * @param a
    * @param b
    * @return La multiplicación entre a y b
    */
   public double multiplicar(double a, double b) {
       if (a == 0 || b == 0) {
           return 0;
       } else {
           return a * b;
       }
   }

   /**
    *
    * @param a
    * @param b
    * @return La división entre a y b
    */
   public double dividir(float a, float b) {
       return a / b;
   }

   /**
    *
    * @param n
    * @return El factorial de un numero
    */
   public int factorial(int n) {
       if (n < 1) {
           return 1;
       } else {
           return n * factorial(n - 1);
       }
   }
   
   /**
    * @return the marca
    */
   public String getMarca() {
       return marca;
   }

   /**
    * @param marca the marca to set
    */
   public void setMarca(String marca) {
       this.marca = marca;
   }

   /**
    * @return the modelo
    */
   public String getModelo() {
       return modelo;
   }

   /**
    * @param modelo the modelo to set
    */
   public void setModelo(String modelo) {
       this.modelo = modelo;
   }

   /**
    * @return the sistemaOperativo
    */
   public String getSistemaOperativo() {
       return sistemaOperativo;
   }

   /**
    * @param sistemaOperativo the sistemaOperativo to set
    */
   public void setSistemaOperativo(String sistemaOperativo) {
       this.sistemaOperativo = sistemaOperativo;
   }

   /**
    * @return the versionSistemaOperativo
    */
   public String getVersionSistemaOperativo() {
       return versionSistemaOperativo;
   }

   /**
    * @param versionSistemaOperativo the versionSistemaOperativo to set
    */
   public void setVersionSistemaOperativo(String versionSistemaOperativo) {
       this.versionSistemaOperativo = versionSistemaOperativo;
   }

}


Código (java) [Seleccionar]

//Me parece que aca es donde tengo que poner algo de la clase Calculadora
package clases;

public class Celular {
   private String marca, modelo, color;
   private double precio;

   public Celular(String marca, String modelo, String color, double precio) {
       this.marca = marca;
       this.modelo = modelo;
       this.color = color;
       this.precio = precio;
   }

   /**
    * @return the marca
    */
   public String getMarca() {
       return marca;
   }

   /**
    * @param marca the marca to set
    */
   public void setMarca(String marca) {
       this.marca = marca;
   }

   /**
    * @return the modelo
    */
   public String getModelo() {
       return modelo;
   }

   /**
    * @param modelo the modelo to set
    */
   public void setModelo(String modelo) {
       this.modelo = modelo;
   }

   /**
    * @return the color
    */
   public String getColor() {
       return color;
   }

   /**
    * @param color the color to set
    */
   public void setColor(String color) {
       this.color = color;
   }

   /**
    * @return the precio
    */
   public double getPrecio() {
       return precio;
   }

   /**
    * @param precio the precio to set
    */
   public void setPrecio(double precio) {
       this.precio = precio;
   }
   
   
}


#195
Buenas mi duda era si habia alguna forma de mostrar todos los atributos de un objeto, porque la verdad me canse de escribir mucho sout y llamar a los metodos Getters, alguna técnica porfis   :-(
#196
Programación C/C++ / funcion coseno
28 Marzo 2019, 04:11 AM
Hola como hago para hacer la formula de Maclaurin pero enviando a esa funcion 1 solo parametro?  :huh:
Porque este no me da ademas son dos parametros que le mando, quiero mandar solo el angulo :(

Código (cpp) [Seleccionar]
main()
{
int i, terminos=8;
double x=1, coseno=0;
for(i=1;i<=terminos;i++)
coseno+=pow(-1,i)*(pow(x,2*i)/factorial(i));
cout<<"Coseno("<<x<<"): "<<coseno<<endl;
}


Código (cpp) [Seleccionar]
int factorial(int n)
{
if(n==0)
return 1;
else
return n*factorial(n-1);
}


No se ve la funcion pero hagan de cuenta que lo del main es la funcion double coseno(terminos, x){...}
#197
Java / Clase Lista
28 Marzo 2019, 02:51 AM
Hola tengo una duda como hago para crear una LinkedList(); de objetos?
#198
Hola mi dudas son las siguientes, como veran al crear un proyecto de NetBeans se crea un arbol de directorios del proyecto, no entiendo bien eso, bueno ¿Hay un estandar de arbol de directorios? ¿Hay forma de crear mi proyecto con un arbol de directorios ya configurado?  :silbar:
#199
Hola, me surgieron unas dudas sobre desarrollo web, tengo una pagína web donde enseñe todo lo que se de programacion y donde comparto recetas de cocina en blogger y ahora quiero aplicar lo que sé en una pagina mas profesional y con dominio propio mi idea es vender productos del negocio de mi padre por internet una cosa mercadolibre pero a menor escala, y queria saber si ademas de tener el dominio debo tener un hosting o algo asi? pero que sea basico porque ando renegando mucho con el front end.
Por último que tan bueno es hostinger en Argentina? planeaba arriesgarme por el pack premium porque no poseo el dineral para lanzarme al pack empresarial, mas que nada necesito alguien que me guie, muchas gracias  :huh:
P/D: El tema de seguridad tambien me preocupa mucho
#200
Hola quisiera saber como se coloca texto e imagenes  con codigo HTML como en esta pagina https://www.mabisy.com/blog-ayuda/como-insertar-un-codigo-html-o-un-tag , tiene texto imagen texto y asi pero lo que yo quiero es colocar tags de imagenes svg , texto tag, texto , etc.
No se bien el orden o como colocarlas en HTML, solo se que el tag se coloca asi:
Código (html4strict) [Seleccionar]
<img src='link de la iamgen' title='Un titulo cualquiera' />
Y otra cosa más ¿Como es que se  hace para que los botones de las redes sociales de la derecha de la misma pagina brillen al apuntar el raton sobre ellas? Los mios no brillan u.u
:huh:
#201
Desarrollo Web / slider
15 Enero 2019, 10:54 AM
Hola,  tengo un slider en mi pagina web que al hacer click me actualiza la pagina, pero lo que yo quiero es que me abra una ventana nueva con ese link
Aca se modifica o en el CSS?
Código (javascript) [Seleccionar]
<!--[if IE]>
<style type="text/css">
.timer { display: none !important; }
div.caption { background:transparent; filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#99000000,endColorstr=#99000000);zoom: 1; }
</style>
<![endif]-->

<script type='text/javascript'>
$(window).load(function() {
$(&#39;#featured&#39;).orbit({
advanceSpeed: 5000,
&#39;bullets&#39;: true,
&#39;timer&#39; : true,
&#39;animation&#39; : &#39;horizontal-slide&#39;
});
});
</script>

<script type='text/javascript'>
//<![CDATA[


(function(e){e.fn.orbit=function(a){a=e.extend({animation:"fade",animationSpeed:800,advanceSpeed:4E3,startClockOnMouseOut:true,startClockOnMouseOutAfter:3E3,directionalNav:true,captions:true,captionAnimationSpeed:800,timer:false,bullets:false},a);return this.each(function(){function m(c){function g(){f.eq(h).css({"z-index":1});s=false}var h=b,k=c;if(h==k)return false;if(!s){s=true;if(c=="next"){b++;if(b==n)b=0}else if(c=="prev"){b--;if(b<0)b=n-1}else{b=c;if(h<b)k="next";else if(h>b)k="prev"}a.bullets&&
x();if(a.animation=="fade"){f.eq(h).css({"z-index":2});f.eq(b).css({opacity:0,"z-index":3}).animate({opacity:1},a.animationSpeed,g);a.captions&&o()}if(a.animation=="horizontal-slide"){f.eq(h).css({"z-index":2});k=="next"&&f.eq(b).css({left:t,"z-index":3}).animate({left:0},a.animationSpeed,g);k=="prev"&&f.eq(b).css({left:-t,"z-index":3}).animate({left:0},a.animationSpeed,g);a.captions&&o()}if(a.animation=="vertical-slide"){f.eq(h).css({"z-index":2});k=="prev"&&f.eq(b).css({top:u,"z-index":3}).animate({top:0},
a.animationSpeed,g);k=="next"&&f.eq(b).css({top:-u,"z-index":3}).animate({top:0},a.animationSpeed,g);a.captions&&o()}}}var b=0,n=0,t,u,s,d=e(this).addClass("orbit"),f=d.find("img, a img");f.each(function(){var c=e(this),g=c.width();c=c.height();d.width(g);t=d.width();d.height(c);u=d.height();n++});f.eq(b).css({"z-index":3});if(a.timer){d.append('<div class="timer"><span class="mask"><span class="rotator"></span></span><span class="pause"></span></div>');var j=e("div.timer"),p;if(j.length!=0){var C=
a.advanceSpeed/180,v=e("div.timer span.rotator"),y=e("div.timer span.mask"),z=e("div.timer span.pause"),l=0,A,w=function(){p=true;z.removeClass("active");A=setInterval(function(){var c="rotate("+l+"deg)";l+=2;v.css({"-webkit-transform":c,"-moz-transform":c,"-o-transform":c});if(l>180){v.addClass("move");y.addClass("move")}if(l>360){v.removeClass("move");y.removeClass("move");l=0;m("next")}},C)},q=function(){p=false;clearInterval(A);z.addClass("active")};w();j.click(function(){p?q():w()});if(a.startClockOnMouseOut){var B;
d.mouseleave(function(){B=setTimeout(function(){p||w()},a.startClockOnMouseOutAfter)});d.mouseenter(function(){clearTimeout(B)})}}}if(a.captions){d.append('<div class="caption"><span class="orbit-caption"></span></div>');var r=d.children("div.caption").children("span").addClass("orbit-caption").show(),o=function(){var c=f.eq(b).attr("rel"),g=e("#"+c).html(),h=r.height()+20;r.attr("id","#"+c).html(g);g?r.parent().stop().animate({bottom:0},a.captionAnimationSpeed):r.parent().stop().animate({bottom:-h},
a.captionAnimationSpeed)};o()}if(a.directionalNav){d.append('<div class="slider-nav"><span class="right">Right</span><span class="left">Left</span></div>');j=d.children("div.slider-nav").children("span.left");var D=d.children("div.slider-nav").children("span.right");j.click(function(){a.timer&&q();m("prev")});D.click(function(){a.timer&&q();m("next")})}if(a.bullets){d.append('<ul class="orbit-bullets"></ul>');var E=e("ul.orbit-bullets");for(i=0;i<n;i++){j=e("<li>"+i+"</li>");e("ul.orbit-bullets").append(j);
j.data("index",i);j.click(function(){a.timer&&q();m(e(this).data("index"))})}var x=function(){E.children("li").removeClass("active").eq(b).addClass("active")};x()}})}})(jQuery);
//]]>
</script>



Código (css) [Seleccionar]
#featured {height: 1px; width: 1px; overflow: hidden;}
div.orbit {
width: 1px;
height: 1px;
position: relative;
overflow: hidden;
}

div.orbit img {
position: absolute;
top: 0;
left: 0;
}
div.orbit a img {border: none;}

div.timer {
width: 40px;
height: 40px;
overflow: hidden;
position: absolute;
top: 10px;
right:10px;
opacity: .6;
cursor: pointer;
z-index: 1001;
}

span.rotator {
display: block;
width: 40px;
height: 40px;
position: absolute;
top: 0;
left: -20px;
background: url(http://4.bp.blogspot.com/_dsEG33PDaHw/TMHhPl2pVcI/AAAAAAAAAas/O7A5Aa7ZMhs/s1600/rotator-black.png);
background-repeat: no-repeat;
z-index: 3;
}

span.mask {
display: block;
width: 20px;
height: 40px;
position: absolute;
top: 0;
right: 0;
z-index: 2;
overflow: hidden;
}

span.rotator.move {left: 0;}
span.mask.move {
width: 40px;
left: 0;
background: url(http://2.bp.blogspot.com/_dsEG33PDaHw/TMHhQItQqeI/AAAAAAAAAaw/afLXhP0yQI8/s1600/timer-black.png);
background-repeat: repeat;
background-position: 0px 0px;
}

span.pause {
display: block;
width: 40px;
height: 40px;
position: absolute;
top: 0;
left: 0px;
background-image: url(http://3.bp.blogspot.com/_dsEG33PDaHw/TMHhPCHG1JI/AAAAAAAAAak/EiGTzJCfL1c/s1600/pause-black.png);
background-repeat: no-repeat;
z-index: 4;
opacity: 0;
}

div.timer:hover span.pause,
span.pause.active,
div.timer:hover span.pause.active { opacity: 1; }

div.caption {
background: #000;
background: rgba(0,0,0,.6);
width: 100%;
z-index: 1000;
position: absolute;
bottom:-100px;
color: #fff;
padding: 8px 0;
text-align: center;
}

div.caption span {
padding: 0 10px;
font-size: 14px;
text-shadow: 0px 1px 0px rgba(0,0,0,.8);
margin: 0;
}
.orbit-caption { display: none; }

div.orbit:hover div.slider-nav { display: block; }
div.slider-nav { display: none; }
div.slider-nav span {
width: 33px;
height: 33px;
text-indent: -9999px;
position: absolute;
z-index: 1000;
top: 43%;
cursor: pointer;
}

div.slider-nav span.right {
background-image: url(http://3.bp.blogspot.com/_dsEG33PDaHw/TMHhPefIDjI/AAAAAAAAAao/Gyy0k0F5Hzw/s1600/right-arrow.png);
right: 10px;
}
div.slider-nav span.left {
background-image: url(http://3.bp.blogspot.com/_dsEG33PDaHw/TMHhNd07EPI/AAAAAAAAAaY/_k9SqP88gV8/s1600/left-arrow.png);
left: 10px;
}

.orbit-bullets {
position: absolute;
z-index: 1000;
list-style: none;
top: 10px;
left: 7px;
margin: 0;
padding: 0;
}

.orbit-bullets li {
float: left;
margin-left: 5px;
cursor: pointer;
color: #999;
text-indent: -9999px;
background-image: url(http://4.bp.blogspot.com/_dsEG33PDaHw/TMHhLtWyUXI/AAAAAAAAAaU/8MQ8LP5flS8/s1600/bullets.png);
background-repeat: no-repeat;
background-position: 0 0;
width: 7px;
height: 7px;
overflow: hidden;
}
#202
Desarrollo Web / HTML maquetacioin
14 Enero 2019, 05:04 AM
Hola chicos esta bien este mensaje de bienvenida que hice? no tengo algun error, alguna forma mas facil de hacerla? busco consejos  :huh:

Código (html4strict) [Seleccionar]
<BODY>
<MARQUEE width="40%" BEHAVIOR=alternate>
<p><span style="color: #339900;">#include &lt;iostream&gt;</span></p>
<p><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #0000ff;">using</span> <span style="color: #0000ff;">namespace</span> std<span style="color: #008080;">;</span></div></p>
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"><span style="color: #993333;">int</span> main<span style="color: #009900;">(</span><span style="color: #009900;">)</span></div>
<span style="color: #008000;">{</span>
<div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;"> <span style="color: #0000dd;">&nbsp;&nbsp;cout</span><span style="color: #000080;">&lt;&lt;</span><span style="color: #FF0000;">"Bienvenidos a mi blog"</span><span style="color: #000080;">&lt;&lt;</span>endl<span style="color: #008080;">;</span></div>
<span style="color: #008000;">}</span>
</MARQUEE>
</BODY>
#203
Bueno, yo tengo una pagina web donde enseño programacion y otras cosas, subo fotos o pongo mi portada y cosas asi y no se ven de buena calidad como en otras paginas, las fotos las hago yo en word, excel, paint, photosop o las saco con el faststone, en algun lugar lei/escuche sobre imagenes vectoriales puede ser? Me ayudan? :xD
#204
Programación C/C++ / Recursion en bst
12 Enero 2019, 01:59 AM
Hola, se puede sumar los valores de las ramas interiores de un arbol binario de busqueda? Quiero decir que sume todos los nodos excepo la raiz y las hojas, me parece que con recursividad no se puede pero si alguien sabe como hacerlo me lo hace saber, esto tengo hecho, me suma la raiz y no quiero eso  >:D
Código (cpp) [Seleccionar]
int sumar(pnodo a)
{
int suma=0;
if(a!=NULL){
suma=sumar(a->izq)+sumar(a->der);
if(a->izq!=NULL || a->der!=NULL)
suma+=a->dato;
}
return suma;
}

Y la funcion iterativa que use para hacer esta operación la hice de esta forma
Código (cpp) [Seleccionar]
int sumar(pnodo a)
{
tpila p;
int suma=0;
pnodo extraido;
if(a!=NULL){
init_stack(p);
push_stack(p,a);
extraido=pop_stack(p);
if(extraido->izq!=NULL)
push_stack(p,extraido->izq);
if(extraido->der!=NULL)
push_stack(p,extraido->der);
while(!empty_stack(p)){
extraido=pop_stack(p);
if(extraido->izq!=NULL || extraido->der!=NULL)
suma+=extraido->dato;
if(extraido->izq!=NULL)
push_stack(p,extraido->izq);
if(extraido->der!=NULL)
push_stack(p,extraido->der);
}
}
return suma;
}
#205
Programación C/C++ / Grafos
10 Enero 2019, 06:00 AM
Hola, miren queria saber si estan bien definida mi estructura de datos, las cosas que me piden son medio raras para mi no conozco de satelites pro ejemplo  :huh:

48) Un equipo de programadores de la empresa DigitalHackers está desarrollando la aplicación MyAppWay para asistir a viajeros y turistas que quieran conocer Argentina. La aplicación será capaz de formular un plan de viaje para visitar ciudades y sitios históricos. Para ello, MyAppWay mantendrá registro de la siguiente información: ciudades (localidad, provincia), lista de sitios turísticos de la ciudad (nombre, dirección), plaza hotelera (cantidad de hoteles y cantidad de hostales), distancia entre ciudades, medios de transporte disponibles (tipo y costo). En virtud de ello, se pide:
a) defina la estructura de datos que permita representar la situación planteada y
b) desarrolle el algoritmo que inicialice la estructura definida.

Código (cpp) [Seleccionar]

typedef struct tcad[32];
typedef struct medio{
tcad tipo;
float costo;
};
typedef struct destino{
tcad localidad;
tcad provincia;
};
typedef struct lugares{
tcad nombre;
tcad direccion;
};
typedef lugares sitios[20];
typedef struct arco *parco;
typedef struct vertice *pvertice;
typedef struct arco{
pvertice destino;
float distancia;
medio transporte;
parco sig_arco;
};
typedef struct vertice{
destino ciudad;
sitios turisticos;
int plaza_hotelera[2];//Cantidad de hoteles y hostales
pvertice sig_vertice;
parco lista_ciudades;
};

void iniciar_grafo(pvertice &grafo)
{
grafo=NULL;
}

49) La empresa de transporte KillerBus realiza viajes entre distintos puntos del país ofreciendo 3 tipos de servicio a sus pasajeros: suit, cama y semicama. Para gestionar los viajes que realiza la empresa se registra la siguiente información: ciudad origen, ciudad destino, distancia entre las ciudades origen y destino, duración del viaje (horas), servicio (tipo y costo), consumo de combustible y número de estaciones de servicio en ruta. En virtud de ello, se pide:
a) defina la estructura de datos que permita representar el servicio de KillerBus y
b) desarrolle el algoritmo que inicialice la estructura definida.
Código (cpp) [Seleccionar]

typedef struct tcad[32];
typedef struct tipo{
tcad tipo_servicio;
float costo;
};
typedef struct tviaje *pviaje;
typedef struct tdestino *pciudad;
typedef struct tviaje{
pciudad destino;
tipo servicio;
float distancia;
int duracion;
float combustible;
int cantidad_estaciones;
pviaje sig;
};
typedef struct tdestino{
tcad ciudad;
pciudad sig;
pviaje lista_destinos;
};

void iniciar_grafo(pciudad &grafo)
{
grafo=NULL;
}


50) Un instituto de investigación meteorológica, mediante una red de satélites geoestacionarios, recopila información acerca de cambios climáticos alrededor de todo el mundo. Cada satélite tiene un área de cobertura (KM2), posición geoestacionaria (altura, latitud y longitud), nivel de energía y vida útil (años). Asimismo debe tenerse en cuenta la distancia entre satélites y la velocidad de transferencia de información (Gigabytes por segundo) entre ellos. Teniendo en cuenta esto, se le solicita:
a) defina la estructura de datos que permita modelar la situación planteada y
b) diseñe un algoritmo que inicialice la estructura definida.
Código (cpp) [Seleccionar]

typedef struct tcad[32];
typedef struct posicion{
int altura;
int latitud[2];
int longitud[2];
};
typedef struct arco *parco;
typedef struct vertice *pvertice;
typedef struct arco{
pvertice destino;
long int transferencia_datos;
parco sig_arco;
};
typedef struct vertice{
pvertice sig;
long int cobertura;
posicion geoestacionaria;
int nivel_energia;
int vida_util;
parco lista_satelites;
};

void iniciar_grafo(pvertice &grafo)
{
grafo=NULL;
}


51) En 2050 se prevé la construcción del sistema de transporte MetroSalta para comunicar distintos puntos de la ciudad de Salta. Cada uno de estos puntos contará con una estación para el arribo y abordaje de pasajeros. El sistema informático que controlará esta red utilizará la siguiente información: nombre de la estación, ubicación (dirección, barrio), distancia entre estaciones, cantidad de plataformas, cantidad de boleterías, duración del viaje y horario de atención al público (hora de inicio, hora de finalización). Considerando esto:
a) defina la estructura de datos más adecuada para el problema y
b) desarrolle el algoritmo que inicialice la estructura definida.
Código (cpp) [Seleccionar]

typedef struct tcad[32];
typedef struct lugar{
tcad direccion;
tcad barrio;
};
typedef struct horario{
int horas;
int minutos;
};
typedef struct arco *parco;
typedef struct vertice *pvertice;
typedef struct arco{
pvertice destino;
float distancia;
int cantidad_plataformas;
int cantidad_boleterias;
int duracion_viaje;
parco sig_estacion;
};
typedef struct vertice{
pvertice sig;
tcad nombre_estacion;
lugar ubicacion;
horario atencion_inicio;
horario atencion_fin;
parco lista_estaciones;
};

void iniciar_grafo(pvertice &grafo)
{
grafo=NULL;
}

52) FaseBoolstd es una red social que permite a sus usuarios mantenerse en contacto, realizar publicaciones, enviar mensajes y compartir archivos. Para ello, el sistema informático que da soporte a esta red almacena: información del perfil (nombre, apellido, nombre de usuario, fecha de creación, lugar de residencia, ocupación), número de contactos, número de comentarios a otro usuario, número de mensajes enviados a otro usuario, número de archivos compartidos a otro usuario, número de "me gusta" a los comentarios/fotos de otro usuario, tipo de relación (amigos, familia, novio/a). Teniendo en cuenta esto, se le solicita:
a) defina la estructura de datos que permita modelar la situación planteada y
b) diseñe un algoritmo que inicialice la estructura definida.
Código (cpp) [Seleccionar]

typedef char tcad[32];
typedef struct fecha{
int dia;
int mes;
int anyo;
};
typedef struct lugar{
tcad calle;
int numero;
tcad barrio;
tcad provincia;
tcad nacionalidad;
};
typedef struct perfil{
tcad nombre;
tcad apellido;
tcad nombre_usuario;
fecha creacion;
lugar residencia;
int numero_contactos;
};
typedef struct arco *parco;
typedef struct vertice *pvertice;
typedef struct arco{
pvertice amigo_destino;
int comentarios;
int mensajes;
int archivos_compartidos;
int megusta;
tcad tipo_relacion;
parco sig_amigo;};

typedef struct vertice{
perfil usuario;
pvertice sig_usuario;
parco lista_amigos;
};

void iniciar_grafo(pvertice &grafo)
{
grafo=NULL;
}

53) El sistema que controla el tráfico vehicular, entre otras tareas, se ocupa de monitorizar y sincronizar los semáforos distribuidos en toda la ciudad. Para verificar el correcto funcionamiento de los semáforos así como su sincronización respecto a otros semáforos cercanos, el sistema cuenta con sensores integrados. Para llevar a cabo esta tarea un sistema informático registra lo siguiente: número de semáforo, estado (en funcionamiento o no), sincronización (sincronizado o no), distancia entre semáforos y ubicación (calle, altura (número), barrio). En virtud de ello, se pide:
a) defina la estructura de datos más adecuada para el problema y
b) desarrolle el algoritmo que inicialice la estructura definida.
Código (cpp) [Seleccionar]

typedef char tcad[32];
typedef struct lugar{
tcad calle;
int altura_numero;
tcad barrio;
};
typedef struct arco *parco;
typedef struct vertice *pvertice;
typedef struct arco{
pvertice destino;
parco sig_semaforo;
};
typedef struct vertice{
int numero_semaforo;
bool funcionando;
bool sincronizado;
lugar ubicacion;
pvertice sig;
parco lista_semaforos;
};

void iniciar_grafo(pvertice &grafo)
{
grafo=NULL;
}

54) Un sistema de redes de computadoras está conformado por un conjunto de servidores que proporcionan acceso a estaciones de trabajo (computadoras). Cada servidor presenta diferentes características físicas y lógicas (id-servidor, dominio, microprocesador, memoria, espacio en disco, Nº de estaciones de trabajo que gestiona) y la conexión entre servidores puede realizarse por cable coaxil, fibra óptica o comunicación inalámbrica (debe existir al menos uno). El costo y velocidad asociado a las conexiones se determina en base a la distancia entre servidores y el tipo de medio utilizado. En virtud de ello, se pide:
a) defina la estructura de datos más adecuada para el problema y
b) desarrolle el algoritmo que inicialice la estructura definida.
Código (cpp) [Seleccionar]

typedef char tcad[32];
typedef struct caracteristicas{
tcad id;
tcad dominio;
tcad procesador;
int memoria;
int espacio_disco;
int numero_estaciones;
};
typedef struct tmedio{
tcad tipo_conexion;
bool existe;
};
typedef tmedio medios[3];
typedef struct arco *parco;
typedef struct vertice *pvertice;
typedef struct arco{
pvertice destino;
medios conexion;
parco sig_servidor;
};
typedef struct vertice{
caracteristicas servidor;
pvertice sig;
parco lista_servidores;
};

void iniciar_grafo(pvertice &grafo)
{
grafo=NULL;
}

:huh:
#206
Hola queria saber como puedo pasar los siguientes "prodecimientos" a funciones, en el primer algoritmo se modifica el valor de una variable pasada por referencia el cual en el main me dice la cantidad exacta de vocales de un arbol binario de busqueda

Código (cpp) [Seleccionar]
void contarNodosQueContenganVocales(pnodo arbol, int &vocales)
{
if(arbol!=NULL){
switch(arbol->dato){
case 'A':
case 'E':
case 'I':
case 'O':
case 'U': vocales++;
}
contarNodosQueContenganVocales(arbol->izq,vocales);
contarNodosQueContenganVocales(arbol->der,vocales);
}
}


Y este  otro procedimiento cuenta la cantidad de nodos que tienen un solo hijito
Código (cpp) [Seleccionar]
void cantidad_nodos(arbol a, int &c)
{
if(a!=NULL){
if((a->izq==NULL && a->der!=NULL) || (a->izq!=NULL && a->der==NULL))
c++;
cantidad_nodos(a->izq,c);
cantidad_nodos(a->der,c);
}
}

:laugh:

uno por uno MAFUS
#207
Hola estaba viendo mi carpeta del cole y me encontre con esto

1) Codifique un algoritmo recursivo que determine el máximo valor del árbol binario de caracteres.

He hecho esto 1 con procedimiento y me quedo asi
Código (cpp) [Seleccionar]

typedef struct tarbol *arbol;
typedef struct tarbol{
char dato;
arbol izq;
arbol der;
};

if(a!=NULL){
  m=a->dato;
  maximo(a,m);
  cout<<"Maximo: "<<m<<endl;
}
  else
cout<<"Arbol vacio"<<endl;

void maximo(arbol a, char &m)
{
  if(a!=NULL){
if(a->dato>m)
m=a->dato;
maximo(a->izq,m);
maximo(a->der,m);
}
}

Y con funcion lo hice asi:
Código (cpp) [Seleccionar]
//Tengo algo de dudas en esta función porque en bst funciona pero no probe en bt
char maximo(pnodo a)
{
   if(a==NULL)
return '@';
   char letra=a->dato;
   char izquierda=maximo(a->izq);
   char derecha=maximo(a->der);
   if(izquierda>letra)
     letra=izquierda;
   if(derecha>letra)
     letra=derecha;
   return letra;
}


Luego la consigna dice:
2) Modofique el algoritmo del ítem anterior para que la busqueda se realice en un arbol binario de busqueda

Y ese lo hice asi:
Código (cpp) [Seleccionar]

char maximo(arbol a)
{
if(a!=NULL){
if(a->der==NULL)
return a->dato;
else
return maximo(a->der);
}
}
#208
Desarrollo Web / Modificar gadget
4 Enero 2019, 02:08 AM
Hola chicos tengo una pagina web donde tengo el siguiente gadget

Código (html4strict) [Seleccionar]
<iframe width="260" height="180" src="https://www.youtube.com/embed/0YhflLRE-DA" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

Lo que quiero hacer es que no solamente muestre un solo video sino que en esa sección vayan apareciendo varios videos como una lista animada mostrandome el siguiente y el siguiente y cuando el usuario seleccione uno se reproduzca y quede trabado en ese video, muchas gracias.
#209
Hola tengo una pagina web donde enseño programacion, y comparto mis animes favoritos, y bueno tambien he hecho un juego y quiero incluirlo en una de las paginas de mi web para cuando el usuario entre a esa pagina le salga el juego con un boton de start y cuando el usuario haga click en start que empiece el juego, el juego esta hecho en scracth y tambien en c++, Gracias  ;-)
#210
Primero que nada hola, bien, tengo el siguiente programa el cual tiene un modulo de agregar un registro solamente si la clave no existe en el archivo de registros tengo lo siguiente:

Código (cpp) [Seleccionar]
#include <stdio.h>
//EL PROBLEMA ESTA EN EL MODULO "void cargar_docentes(archivo docentes)"
#include <stdlib.h>
#include <string.h>
#include <iostream>

using namespace std;

typedef char tcad[50];
typedef struct tfecha{
int dia;
int mes;
int anyo;
};
typedef struct tformacion{
tcad titulo;
tcad facultad;
tcad universidad;
};
typedef struct tdocente{
int legajo;
tcad nombre_apellido;
tfecha fecha_nac;
tformacion educacion;
int DNI;
tcad cargo;
};
typedef FILE *parchivo;

void cargar(tdocente &docente);
void mostrar(tdocente docente);
void cargar_docentes(parchivo docentes);
bool consulta(parchivo docentes, int codigo);
void mostrar_docentes(parchivo docentes);
void busqueda(parchivo docentes, int codigo);
void modificar_docente(parchivo docentes, int codigo);
void eliminar_docente(parchivo docentes, int codigo);
void listar_docentes_especificos(parchivo docentes, tcad buscado);
void nueva_cadena(tcad &cadena);

int main()
{
parchivo docentes;
int opcion, codigo;
tcad buscado;
do{
system("cls");
cout<<"1. Cargar docente"<<endl;
cout<<"2. Consultar docente"<<endl;
cout<<"3. Listar docentes"<<endl;
cout<<"4. Buscar docente"<<endl;
cout<<"5. Modificar docente"<<endl;
cout<<"6. Eliminar docente"<<endl;
cout<<"7. Listar docentes por universidad"<<endl;
cout<<"8. Salir"<<endl;
cin>>opcion;
switch(opcion){
case 1: cargar_docentes(docentes);break;
case 2: cout<<"Ingrese numero de legajo: ";
cin>>codigo;
if(consulta(docentes,codigo)==true)
cout<<"Docente encontrado"<<endl;
else
cout<<"Docente no encontrado"<<endl;
break;
case 3: mostrar_docentes(docentes);break;
case 4: cout<<"Ingrese numero de legajo: ";
cin>>codigo;
busqueda(docentes,codigo);break;
case 5: cout<<"Ingrese numero de legajo: ";
cin>>codigo;
modificar_docente(docentes,codigo);break;
case 6: cout<<"Ingrese numero de legajo: ";
cin>>codigo;
eliminar_docente(docentes,codigo);break;
case 7: cout<<"Ingrese universidad: ";
nueva_cadena(buscado);
listar_docentes_especificos(docentes,buscado);break;
case 8: cout<<"FIN DEL PROGRAMA"<<endl;break;
default: cout<<"Opcion incorrecta"<<endl;
}
system("pause");
}while(opcion!=8);
}

void cargar(tdocente &docente)
{
cout<<"Ingrese datos del docente"<<endl;
cout<<"Legajo: ";
cin>>docente.legajo;
cout<<"Nombre y apellido: ";
nueva_cadena(docente.nombre_apellido);
cout<<"Fecha de nadimiento DD/MM/AA"<<endl;
cin>>docente.fecha_nac.dia;
cin>>docente.fecha_nac.mes;
cin>>docente.fecha_nac.anyo;
cout<<"Formacion academica"<<endl;
cout<<"Titulo: ";
nueva_cadena(docente.educacion.titulo);
cout<<"Facultad: ";
nueva_cadena(docente.educacion.facultad);
cout<<"Universidad: ";
nueva_cadena(docente.educacion.universidad);
cout<<"DNI: ";
cin>>docente.DNI;
cout<<"Cargo: ";
nueva_cadena(docente.cargo);
}

void mostrar(tdocente docente)
{
cout<<"Datos del docente"<<endl;
cout<<"Legajo: "<<docente.legajo<<endl;
cout<<"Nombre y apellido: "<<docente.nombre_apellido<<endl;
cout<<"Fecha de nadimiento:"<<docente.fecha_nac.dia<<"/"<<docente.fecha_nac.mes<<"/"<<docente.fecha_nac.anyo<<endl;
cout<<"Formacion academica"<<endl;
cout<<"Titulo: "<<docente.educacion.titulo<<endl;
cout<<"Facultad: "<<docente.educacion.facultad<<endl;
cout<<"Universidad: "<<docente.educacion.universidad<<endl;
cout<<"DNI: "<<docente.DNI<<endl;
cout<<"Cargo: "<<docente.cargo<<endl<<endl;
}
//EL PROBLEMA ES ESTE MODULO
void cargar_docentes(parchivo docentes)
{
tdocente d;
docentes=fopen("docentes.txt","ab+");
cargar(d);
fclose(docentes);
if(consulta(docentes,d.legajo)==false){
docentes=fopen("docentes.txt","ab");
fwrite(&d,sizeof(d),1,docentes);
}
else
cout<<"El numero de legajo ya existe"<<endl;
fclose(docentes);
}

bool consulta(parchivo docentes, int codigo)
{
tdocente d;
bool encontrado=false;
docentes=fopen("docentes.txt","rb");
if(docentes!=NULL){
while(!feof(docentes) && !encontrado){
fread(&d,sizeof(d),1,docentes);
if(d.legajo==codigo)
encontrado=true;
}
}
fclose(docentes);
return encontrado;
}

void mostrar_docentes(parchivo docentes)
{
tdocente d;
docentes=fopen("docentes.txt","rb");
if(docentes==NULL)
cout<<"No se pudo abrir el archivo"<<endl;
else{
while(!feof(docentes)){
fread(&d,sizeof(d),1,docentes);
if(!feof(docentes))
mostrar(d);
}
}
fclose(docentes);
}

void busqueda(parchivo docentes, int codigo)
{
tdocente d;
bool encontrado=false;
docentes=fopen("docentes.txt","rb");
if(docentes==NULL)
cout<<"No se pudo abrir el archivo"<<endl;
else{
while(!feof(docentes) && !encontrado){
fread(&d,sizeof(d),1,docentes);
if(d.legajo==codigo){
mostrar(d);
encontrado=true;
}
}
if(encontrado==false)
cout<<"Docente no encontrado"<<endl;
}
fclose(docentes);
}

void modificar_docente(parchivo docentes, int codigo)
{
tdocente d;
bool encontrado=false;
docentes=fopen("docentes.txt","rb+");
if(docentes==NULL)
cout<<"No se pudo abrir el archivo"<<endl;
else{
while(!feof(docentes) && !encontrado){
fread(&d,sizeof(d),1,docentes);
if(codigo==d.legajo)
encontrado=true;
}
if(encontrado==true){
cargar(d);
fseek(docentes,-sizeof(d),1);
fwrite(&d,sizeof(d),1,docentes);
}
else
cout<<"Docente no encontrado"<<endl;
}
fclose(docentes);
}

void eliminar_docente(parchivo docentes, int codigo)
{
tdocente d;
parchivo temporal;
docentes=fopen("docentes.txt","rb");
temporal=fopen("temporal.txt","wb");
if(docentes==NULL){
cout<<"ARCHIVO INEXISTENTE"<<endl;
fclose(docentes);
fclose(temporal);
}
else{
while(!feof(docentes)){
fread(&d,sizeof(d),1,docentes);
if(!feof(docentes) && d.legajo!=codigo)
fwrite(&d,sizeof(d),1,temporal);
}
fclose(docentes);
fclose(temporal);
if(remove("docentes.txt")==0)
rename("temporal.txt","docentes.txt");
else
cout<<"ERROR AL ELIMINAR"<<endl;
}
}

void listar_docentes_especificos(parchivo docentes, tcad buscado)
{
tdocente d;
docentes=fopen("docentes.txt","rb");
if(docentes==NULL)
cout<<"No se pudo abrir el archivo"<<endl;
else{
while(!feof(docentes)){
fread(&d,sizeof(d),1,docentes);
if(!feof(docentes) && strcmp(d.educacion.universidad,buscado)==0)
mostrar(d);
}
}
fclose(docentes);
}

void nueva_cadena(tcad &cadena)
{
fflush(stdin);
gets(cadena);
fflush(stdin);
}


Si bien no me resulta funcional lo que me enseñaron de cerrar el archivo para llamar a la funcion de busqueda que devuelve un valor logico.
Como en este caso:

Código (cpp) [Seleccionar]
void agregar_alumnos(parchivo alumnos)
{
talumno a;
int cantidad;
alumnos=fopen("alumnos.txt","wb");
cout<<"Cuántos registros desea guardar: ";
cin>>cantidad;
while(cantidad>0){
carga(a);
fclose(alumnos);
if(buscar_archivo(alumnos,a.libreta)==false){
alumnos=fopen("alumnos.txt","ab");
fwrite(&a,sizeof(a),1,alumnos);
cantidad--;
}
else
cout<<"La libreta ya existe"<<endl;
}
fclose(alumnos);
}


Pero le he encontrado dos soluciones la primera es algo extraña, no me convence y es cambiar incluir un mensaje en la funcion de busqueda,
cosa que no se hace en funciones.
Es asi:
Código (cpp) [Seleccionar]
bool consulta(parchivo docentes, int codigo)
{
tdocente d;
bool encontrado=false;
docentes=fopen("docentes.txt","rb");
if(docentes!=NULL){
while(!feof(docentes) && !encontrado){
fread(&d,sizeof(d),1,docentes);
if(d.legajo==codigo)
encontrado=true;
cout<<"Encontrado: "<<encontrado<<endl;
}
}
fclose(docentes);
return encontrado;
}


Un poco raro bueno, y la ultima y mas clara diria yo es mantener el archivo abierto al mandar a preguntar si existe o no la clave del registro en
el archivo de registros, asi es como he logrado hacer andar este programa, pero no entiendo bien me explican?

Código (cpp) [Seleccionar]
void cargar_docentes(parchivo docentes)
{
tdocente d;
docentes=fopen("docentes.txt","ab+");
cargar(d);
if(consulta(docentes,d.legajo)==false)
fwrite(&d,sizeof(d),1,docentes);
else
cout<<"El numero de legajo ya existe"<<endl;
fclose(docentes);
}


Intenten agregar con el primer programa agregar como primer registro todos los campos en 1, no les deja pero si ponen todo 2 en los campos del registro si, me perdi muchachos ayuda.  :-(
#211
Desarrollo Web / Stream de musica en blogger
30 Diciembre 2018, 03:27 AM
Hola a todos y todas, queria saber como puedo hacer para que el usuario escuche musica de mi stream de radio y que siga escuchando aunque navege por las secciones de mi pagina tengo esto en el gadget

Código (html4strict) [Seleccionar]
<iframe src="https://miradio.piratitajajaenseriochicos.php?"
                                            scrolling="no" frameborder="0" allowtransparency="true" width="200" height="240" autoplay=true ></iframe>


Como podria hacer?  :huh:
#212
Hola a todos, queria saber como puedo hacer una lista de entradas en mi pagina web, tengo secciones, programacion, anime y quiero colocar entradadas en programacion por ejemplo pero que en vez de mostrarme lo ultimo que publique me liste por link a otra pagina donde ahi si se va a leer mi contenido

PROGRAMACION | ANIME
Click en Programacion->
Y que me muestre lo siguiente
1-Aprendiendo a Programar
2-Programacion
3- ... etc
Y que  al hacer click en "1-Aprendiendo a Programar" que me mande a una pagina donde redacte mi contenido muchas gracias
#213
Holas queria saber si existe alguna herramienta para sacar fotos a mi pantalla  con la tecla Imp Pant sin perder la calidad de imagen,y como podria hacer estas graficas? me interesan que las flechas tengan esas curvas

Y otra cosa mas como podria hacer animaciones 3D para representar ordenamientos burbuja en arreglos, comportamiento de estructuras de datos y demas, gracias y feliz año nuevo  ;-)

#214
Desarrollo Web / Etiquetas geshi en mi pagina web
26 Diciembre 2018, 21:10 PM
Hola a todos, estoy armando mi pagina web dedicada al anime, programacion y cocina donde enseñare programacion y quera saber como colocarle las etiquetas GesSHi a mi pagina gracias  ;-)
#215
Buenas chicos, me surgio una duda, como debo pasar un nodo dentro de un procedimiento si se da el caso de que quiero borrarlo ahi? por valor o referencia? A mi se me hace que por valor/referencia da lo mismo ustedes que dicen?

Código (cpp) [Seleccionar]
//Definicion de la estructura
const int MAX=8;
typedef struct tnodo *pnodo;
typedef struct tnodo{
int dato;
pnodo sig;
};
typedef struct tpila{
pnodo inicio;
pnodo final;
int contador;
};

void binario(int n)
{
tpila pila;
pnodo nuevo, eliminado;
init_stack(pila);
while(n>0){
crear_nodo(nuevo,n%2);
push_stack(pila,nuevo);//Bueno aqui llama a push_stack(estructura pila, nodo nuevo);
n/=2;
}
cout<<"Binario: ";
while(empty_stack(pila)==false){
eliminado=pop_stack(pila);
cout<<eliminado->dato;
delete(eliminado);
}
cout<<endl;
}

//Aca es donde me vino la duda
void push_stack(tpila &pila, pnodo nuevo)//Justo aquí
{
if(full_stack(pila)==true){
cout<<"Pila llena"<<endl;
delete(nuevo);//<---Y aquí
}
else{
if(pila.inicio==NULL){
pila.inicio=nuevo;
pila.final=nuevo;
}
else{
pila.final->sig=nuevo;
pila.final=nuevo;
}
pila.contador++;
}
}
#216
Programación General / Scratch
24 Diciembre 2018, 03:22 AM
Buenas, tengo una dudas sobre la sintaxis de Scratch, tengo un escenario 3 personajes con todas sus acciones(sprites sheet)
donde tengo A(Objeto 1 que es el personaje principal), B(Objeto 2 que es el jefe del mapa), y Objeto C(Como guia del juego)
El juego al apretar la bandera verde de Scratch el escenario comienza su animacion por siempre ok?
Luego yo tengo mi objeto A que intenta avanzar por el mapa pero no puede porque objeto B no se lo permite
     A   B
Al intentar pasar objeto A recibe un golpe de objeto B y hace retroceder a objeto A
       AB
       A(golpe de B)B
  A(retrocede)      B
Y luego de esto aparece objeto C detras de objeto A diciendo unas frases y entregandole un arma a A
C  A      B
C(entrega arma)A    B
C       A(con arma)   B
Despues de esto objeto A se acerca lo suficiente para atacar a distancia a objeto B y asi logra derrotarlo
C       A(con arma)   B(recibe golpe y es derrotado)
Luego de esto objeto C dice unas frases y termina el juego, alguien me ayudaria? estoy trabada con el tema de colisiones
Si objeto A pega a B y B pega A y asi, tambien hacer secuencial los eventos q se presentan mientras el juego avanza
Y bueno aun no le he añadido una barra de vida no sabria si usar un arreglo de dos espacios u otro objeto que cambie
su forma bueno eso es todo
#217
Diseño Gráfico / Como crear un sprite sheet
22 Diciembre 2018, 22:05 PM
Quisiera saber saber de alguna herramienta para crear un sprite sheets, ya tengo todos los sprites dibujados, pero no encuentro nada como para convertirlos en gifs sin el fondo blanco, ayuda  :huh:
#218
Desarrollo Web / levantar mi primera web
16 Diciembre 2018, 01:30 AM
Buenas chicos y chicas, queria saber donde puedo aprender a desarrollar mi primera pagina web gratis con algun hosting y esas cosas? si alguien me guia en el tema, quiero poner en practica mis conocimientos y que mejor idea que hacer mi primera pagina web dedicada al anime, muchas gracias  ;-)
#219
Necesito algo de ayuda con los modulos de validacion de puntos geograficos, latitud, longitud y comparacion de dos puntos geograficos , me parece que algo estoy haciendo mal en el segundo y no quiero colocar todo en un solo if  :(
Código (cpp) [Seleccionar]
#include <iostream>
#include <stdlib.h>
#include <string.h>

using namespace std;

typedef struct coordenadas{
int grados;
int minutos;
int segundos;
char direccion;
};
typedef struct punto_geografico{
coordenadas latitud;
coordenadas longitud;
};

void crear(coordenadas &c, bool latitud);
bool validar(coordenadas p, bool latitud);
bool iguales(punto_geografico p, punto_geografico q);
void determinar_ubicacion(punto_geografico p);

int main()
{
punto_geografico p, q;
cout<<"Crear primer punto geografico"<<endl;
cout<<"Latitud"<<endl;
crear(p.latitud,1);
cout<<"Longitud"<<endl;
crear(p.longitud,0);
cout<<"Crear segundo punto geografico"<<endl;
cout<<"Latitud"<<endl;
crear(q.latitud,1);
cout<<"Longitud"<<endl;
crear(q.longitud,0);
if(iguales(p,q)==true)
cout<<"Son iguales"<<endl;
else
cout<<"Son diferentes"<<endl;
determinar_ubicacion(p);
system("pause");
}

void crear(coordenadas &c, bool latitud)
{
do{
cout<<"Ingrese grados   : ";
cin>>c.grados;
cout<<"Ingrese minutos  : ";
cin>>c.minutos;
cout<<"Ingrese segundos : ";
cin>>c.segundos;
cout<<"Ingrese direccion: ";
cin>>c.direccion;
}while(validar(c,latitud)==false);
}
//Aqui
bool validar(coordenadas c, bool latitud)
{
if(latitud==true){
if(c.direccion=='N' || c.direccion=='S'){
if(c.grados==90 && c.minutos==0 && c.segundos==0)
return true;
else{
if(c.grados<0 || c.grados>89 || c.minutos<0 || c.minutos>59 || c.segundos<0 || c.segundos>59)
return false;
else
return true;
}
}
else
return false;
}
else{
if(c.direccion=='E' || c.direccion=='O'){
if(c.grados==180 && c.minutos==0 && c.segundos==0)
return true;
else{
if(c.grados<0 || c.grados>179 || c.minutos<0 || c.minutos>59 || c.segundos<0 || c.segundos>59)
return false;
else
return true;
}
}
else
return false;
}
}
//Y aqui
bool iguales(punto_geografico p, punto_geografico q)
{
if(p.latitud.direccion==q.latitud.direccion && p.longitud.direccion==q.longitud.direccion){
if(p.latitud.grados==q.latitud.grados && p.longitud.grados==q.longitud.grados)
if(p.latitud.minutos==q.latitud.minutos && p.longitud.minutos==q.longitud.minutos)
if(p.latitud.segundos==q.latitud.segundos && p.longitud.segundos==q.longitud.segundos)
return true;
}
else
return false;
}

void determinar_ubicacion(punto_geografico p)
{
cout<<"El punto geografico se ubica en";
if(p.latitud.direccion=='N')
cout<<" el hemisferio Norte ";
else
cout<<" el hemisferio Sur ";
if(p.longitud.direccion=='E')
cout<<"Oriental"<<endl;
else
cout<<"Occidentel"<<endl;
}
#220
Queria saber si esta bien el modulo crear(nuevo) donde asigno enteros a una variable logica o hay otra forma mas "estetica"? gracias
Código (cpp) [Seleccionar]
#include <iostream>
#include <stdlib.h>
#include <string.h>

using namespace std;

const int MAX=32;
typedef char tcad[MAX];
typedef struct ambito{
bool local;
};
typedef struct simbolo{
tcad nombre;
tcad tipo_dato;
int tamanyo;
int valor;
ambito global;
};
typedef struct tnodo *pnodo;
typedef struct tnodo{
simbolo dato;
pnodo sig;
};
typedef struct tlista{
pnodo inicio;
pnodo final;
};

void iniciar(tlista &tabla);
void crear(pnodo &nuevo);
bool validar(tcad cadena);
void agregar_final(tlista &tabla, pnodo nuevo);
int cantidad(pnodo i);
int total_bytes(pnodo i);
void ordenar(tlista &tabla);
void mostrar(tlista tabla);
void nueva_cadena(tcad &cadena);

int main()
{
int opcion;
tlista mitabla;
pnodo nuevo;
iniciar(mitabla);
do{
system("cls");
cout<<"1. Agregar variable a la tabla"<<endl;
cout<<"2. Mostrar cantidad de variables"<<endl;
cout<<"3. Calcular bytes de la tabla"<<endl;
cout<<"4. Ordenar tabla"<<endl;
cout<<"5. Mostrar tabla"<<endl;
cout<<"6. Salir"<<endl;
cin>>opcion;
switch(opcion){
case 1: crear(nuevo);
if(nuevo!=NULL)
agregar_final(mitabla,nuevo);
break;
case 2: cout<<"Cantidad de variables: "<<cantidad(mitabla.inicio)<<endl;break;
case 3: cout<<"Bytes totales de la tabla: "<<total_bytes(mitabla.inicio)<<endl;break;
case 4: ordenar(mitabla);break;
case 5: mostrar(mitabla);break;
case 6: cout<<"FIN DEL PROGRAMA"<<endl;break;
default: cout<<"Opcion incorrecta"<<endl;
}
system("Pause");
}while(opcion!=6);
}

void iniciar(tlista &tabla)
{
tabla.inicio=NULL;
tabla.final=NULL;
}
//Aca es donde quiero que vean si esta bien lo de asignar valor entero  a esa variable logica nuevo->dato.global.local ya que ...
void crear(pnodo &nuevo)
{
        int auxiliar;
bool valido;
nuevo=new tnodo;
if(nuevo!=NULL){
do{
cout<<"Ingrese nombre variable: ";
nueva_cadena(nuevo->dato.nombre);
}while(validar(nuevo->dato.nombre)==false);
cout<<"Ingrese tipo de dato: ";
nueva_cadena(nuevo->dato.tipo_dato);
cout<<"Ingrese  tamaño: ";
cin>>nuevo->dato.tamanyo;
cout<<"Ingrese valor: ";
cin>>nuevo->dato.valor;
do{
cout<<"Ingrese ambito local(0)/global(1): ";
cin>>auxiliar;
if(auxiliar==0 || auxiliar==1){
nuevo->dato.global.local=auxiliar;
valido=true;
}
else
valido=false;
}while(valido==false);
nuevo->sig=NULL;
}
else
cout<<"MEMORIA INSUFICIENTE"<<endl;
}
//... de esta forma no me funciona :(
void crear(pnodo &nuevo)
{
nuevo=new tnodo;
if(nuevo!=NULL){
do{
cout<<"Ingrese nombre variable: ";
nueva_cadena(nuevo->dato.nombre);
}while(validar(nuevo->dato.nombre)==false);
cout<<"Ingrese tipo de dato: ";
nueva_cadena(nuevo->dato.tipo_dato);
cout<<"Ingrese  tamaño: ";
cin>>nuevo->dato.tamanyo;
cout<<"Ingrese valor: ";
cin>>nuevo->dato.valor;
//JUSTO DESDE AQUI
do{
cout<<"Ingrese ambito local(0)/global(1): ";
cin>>nuevo->dato.global.local;
}while(nuevo->dato.global.local<0 || nuevo->dato.global.local>1);
nuevo->sig=NULL;
}
else
cout<<"MEMORIA INSUFICIENTE"<<endl;
}

bool validar(tcad cadena)
{
int i;
bool validado=true;
if(islower(cadena[0]) || isupper(cadena[0])){
for(i=1;i<strlen(cadena) && !validado;i++){
if(isdigit(cadena[i]) || isupper(cadena[i]) || islower(cadena[i]) || cadena[i]=='_')
validado=true;
else
validado=false;
}
}
else
validado=false;
return validado;
}

void agregar_final(tlista &tabla, pnodo nuevo)
{
if(tabla.inicio==NULL){
tabla.inicio=nuevo;
tabla.final=nuevo;
}
else{
tabla.final->sig=nuevo;
tabla.final=nuevo;
}
}

int cantidad(pnodo i)
{
if(i==NULL)
return 0;
else
return cantidad(i->sig)+1;
}

int total_bytes(pnodo i)
{
if(i==NULL)
return 0;
else
return i->dato.tamanyo+total_bytes(i->sig);
}

void ordenar(tlista &tabla)
{
pnodo i, j;
simbolo cambio;
bool ordenado=true;
if(tabla.inicio!=NULL){
while(ordenado){
ordenado=false;
for(i=tabla.inicio;i->sig!=NULL;i=i->sig){
j=i->sig;
if(i->dato.tamanyo>j->dato.tamanyo){
cambio=i->dato;
i->dato=j->dato;
j->dato=cambio;
ordenado=true;
}
}
}
}
}

void mostrar(tlista tabla)
{
pnodo i;
if(tabla.inicio!=NULL){
for(i=tabla.inicio;i!=NULL;i=i->sig){
cout<<"Nombre variable: "<<i->dato.nombre<<endl;
cout<<"Tipo de dato: "<<i->dato.tipo_dato<<endl;
cout<<"Tamaño: "<<i->dato.tamanyo<<" Bytes"<<endl;
cout<<"Valor: "<<i->dato.valor<<" Bytes"<<endl;
cout<<"Ambito: ";
if(i->dato.global.local==true)
cout<<"Global"<<endl;
else
cout<<"Local"<<endl;
cout<<endl;
}
}
else
cout<<"Tabla vacia"<<endl;
}

void nueva_cadena(tcad &cadena)
{
fflush(stdin);
gets(cadena);
fflush(stdin);
}
#221
Código (cpp) [Seleccionar]
//Alguien me dice porque este codigo funciona asi y..
bool alguna_funcion(estructura a, estructura b)
{
if(condiciones){
if(condiciones)
if(condiciones)
if(condiciones)
return true;
}
else
return false;
}
// ... no asi? por favor :(
bool alguna_funcion(estructura a, estructura b)
{
if(condiciones)
if(condiciones)
if(condiciones)
if(condiciones)
return true;
else
return false;
}
  :huh:
#222
Código (cpp) [Seleccionar]
/Definicion de la estructura lista doble
typedef struct tnodo *pnodo;
typedef struct tnodo{
int dato;
pnodo sig;
pnodo ant;
};
typedef struct tlista{
pnodo inicio;
pnodo final;
};
//Porque se libera asi la memoria
void liberar_lista(tlista &lista)
{
pnodo borrado;
while(lista.inicio!=NULL){
borrado=lista.inicio;
lista.inicio=borrado->sig;
borrado->sig=NULL;
borrado->ant=NULL;
delete(borrado);
}
}
//Y no asi??
void liberar_lista(tlista &lista)
{
pnodo borrado;
while(lista.inicio!=NULL){
borrado=lista.inicio;
lista.inicio=borrado->sig;
lista.inicio->ant=NULL;
borrado->sig=NULL;
delete(borrado);
}
}
:huh:
#223
Código (cpp) [Seleccionar]
//Porque el codigo funciona asi en listas vacias o no?
void ordenar(tlista &lista)
{
puntero i, j;
estructura cambio;
bool ordenado=true;
if(lista.inicio!=NULL){
while(ordenado){
ordenado=false;
for(i=lista.inicio;i->sig!=NULL;i=i->sig){
j=i->sig;
if(i->dato>j->dato){
cambio=i->dato;
i->dato=j->dato;
j->dato=cambio;
ordenado=true;
}
}
}
}
}
//y este codigo solo funciona en listas no vacias, me perdí
void ordenar(tlista &lista)
{
puntero i, j;
estructura cambio;
bool ordenado=true;
while(ordenado){
ordenado=false;
for(i=lista.inicio;i->sig!=NULL;i=i->sig){
j=i->sig;
if(i->dato>j->dato){
cambio=i->dato;
i->dato=j->dato;
j->dato=cambio;
ordenado=true;
}
}
}
}
#224
Java / IDE para programar en Java
7 Diciembre 2018, 22:33 PM
Hola a todos, que IDE me recomiendan para programar/desarrollar en Java que no sea NetBeans porque ya lo tengo y no me gusta, gracias.
#225
Hola a todos, miren estaba repasando un poco de lo que vi en Estructura de Datos y rehaciendo todo de nuevo y me encuentro que este modulo llamado crear_nodo(nodo nuevo); le pide al usuario ingresar enteros y cadenas y yo habia utilizado el gets(cadena); y la funcion fflush(stdin); para limpiar el buffer el punto es que no me gusto para nada colocar el fflush(stdin); antes y despues de leer una cadena con gets(cadena); si alguien sabe de alguna forma mas estetica me ayuda porfis?
Código (cpp) [Seleccionar]
#include <iostream>
#include <stdlib.h>
#include <string.h>

using namespace std;

const int MAX=32;
typedef char tcad[MAX];
typedef struct tfecha{
int dia;
int mes;
int anyo;
};
typedef struct tdomicilio{
tcad calle;
int numero;
tcad barrio;
tcad localidad;
};
typedef struct tvehiculo{
tcad marca;
tcad modelo;
tcad patente;
};
typedef struct thorario{
tcad entrada;
tcad salida;
};
typedef struct tchofer{
int legajo;
tcad apellido;
tcad nombre;
int DNI;
tfecha fecha_nacimiento;
tdomicilio domicilio;
tvehiculo vehiculo_asignado;
thorario horario_trabajo;
int horas_extras;
};
typedef struct tnodo *pnodo;
typedef struct tnodo{
tchofer dato;
pnodo sig;
};

void iniciar_lista(pnodo &lista);
void crear_nodo(pnodo &nuevo);
void agregar_final(pnodo &lista, pnodo nuevo);
void listar_choferes(pnodo lista, tcad buscado);
void listar_chofer_horas_extras(pnodo lista);
void nueva_cadena(tcad &cadena);

int main()
{
int opcion;
pnodo milista, nuevo;
tcad buscado;
iniciar_lista(milista);
do{
system("cls");
cout<<"1. Agregar chofer"<<endl;
cout<<"2. Listar choferes segun horario de entrada"<<endl;
cout<<"3. Listar chofer con mayor cantidad de horas extras"<<endl;
cout<<"4. Salir"<<endl;
cin>>opcion;
switch(opcion){
case 1: crear_nodo(nuevo);
if(nuevo!=NULL)
agregar_final(milista,nuevo);
break;
case 2: cout<<"Ingrese hora: ";
nueva_cadena(buscado);
listar_choferes(milista,buscado);break;
case 3: listar_chofer_horas_extras(milista);break;
case 4: cout<<"FIN DEL PROGRAMA"<<endl;break;
default: cout<<"Opcion incorrecta"<<endl;
}
system("pause");
}while(opcion!=4);
}

void iniciar_lista(pnodo &lista)
{
lista=NULL;
}

void crear_nodo(pnodo &nuevo)
{
nuevo=new tnodo;
if(nuevo!=NULL){
cout<<"Ingrese datos personales"<<endl;
cout<<"Legajo: ";
cin>>nuevo->dato.legajo;
cout<<"Apellido: ";
nueva_cadena(nuevo->dato.apellido);
cout<<"Nombre: ";
nueva_cadena(nuevo->dato.nombre);
cout<<"DNI: ";
cin>>nuevo->dato.DNI;
cout<<"Fecha de nacimiento"<<endl;
cout<<"Dia: ";
cin>>nuevo->dato.fecha_nacimiento.dia;
cout<<"Mes: ";
cin>>nuevo->dato.fecha_nacimiento.mes;
cout<<"Año: ";
cin>>nuevo->dato.fecha_nacimiento.anyo;
cout<<"Domicilio"<<endl;
cout<<"Calle: ";
nueva_cadena(nuevo->dato.domicilio.calle);
cout<<"Numero: ";
cin>>nuevo->dato.domicilio.numero;
cout<<"Barrio: ";
nueva_cadena(nuevo->dato.domicilio.barrio);
cout<<"Localidad: ";
nueva_cadena(nuevo->dato.domicilio.localidad);
cout<<"Vehiculo asignado"<<endl;
cout<<"Marca: ";
nueva_cadena(nuevo->dato.vehiculo_asignado.marca);
cout<<"Modelo: ";
nueva_cadena(nuevo->dato.vehiculo_asignado.modelo);
cout<<"Patente: ";
nueva_cadena(nuevo->dato.vehiculo_asignado.patente);
cout<<"Horario entrada: ";
nueva_cadena(nuevo->dato.horario_trabajo.entrada);
cout<<"Horario salida: ";
nueva_cadena(nuevo->dato.horario_trabajo.salida);
cout<<"Horas extras: ";
cin>>nuevo->dato.horas_extras;
nuevo->sig=NULL;
}
else
cout<<"MEMORIA INSUFICIENTE"<<endl;
}

void agregar_final(pnodo &lista, pnodo nuevo)
{
pnodo i;
if(lista==NULL)
lista=nuevo;
else{
for(i=lista;i->sig!=NULL;i=i->sig);
i->sig=nuevo;
}
}

void listar_choferes(pnodo lista, tcad buscado)
{
int cantidad=0;
pnodo i;
if(lista!=NULL){
for(i=lista;i!=NULL;i=i->sig){
if(strcmp(i->dato.horario_trabajo.entrada,buscado)==0){
cout<<"Chofer"<<endl;
cout<<"Nombre: "<<i->dato.nombre<<endl;
cout<<"Apellido: "<<i->dato.apellido<<endl;
cout<<"Patente de vehiculo asignado: "<<i->dato.vehiculo_asignado.patente<<endl<<endl;
cantidad++;
}
}
cout<<"Cantidad de choferes: "<<cantidad<<endl;
}
else
cout<<"LISTA VACIA"<<endl;
}

void listar_chofer_horas_extras(pnodo lista)
{
pnodo i, chofer;
if(lista!=NULL){
chofer=lista;
for(i=lista;i!=NULL;i=i->sig){
if(i->dato.horas_extras>chofer->dato.horas_extras)
chofer=i;
}
cout<<"Chofer con mayor cantidad de horas extras"<<endl;
cout<<"Nombre: "<<chofer->dato.nombre<<endl;
cout<<"Apellido: "<<chofer->dato.apellido<<endl;
cout<<"DNI: "<<chofer->dato.DNI<<endl;
cout<<"Horas extras: "<<chofer->dato.horas_extras<<endl;
}
else
cout<<"LISTA VACIA"<<endl;
}

void nueva_cadena(tcad &cadena)
{
fflush(stdin);
gets(cadena);
fflush(stdin);
}