Hola que tal, como dice el titulo queria saber si existe alguna libreria que trabajara multihilo en C, solo he encontrado la de <thread> pero es C++, gracias.
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ú
using System;
namespace Prueba1
{
/*
Un asesino, cansado de elegir sus victimas de la manera habitual, decide hacer la seleccion de una manera mas especial
para esto decide seleccionarlas aelatoriamente. Cree un programa que le permita agrupar a sus posibles victimas y asignarles
un numero y que sea el programa quien decida a quien debe asesinar al momento de que le apetesca para esto debe tener en
consideracion la siguiente condicion:
*Una vez seleccionado una victima , el sistema debera omitir esta persona en la proxima busqueda,de manera que nunca salga
la misma posicion dos veces.
*/
class Program
{
static void Main(string[] args)
{
Console.WriteLine("--------------Asesino Serial--------------");
Console.Write("Ingrese cuantas personas se asesinaran: ");
int victimas = int.Parse(Console.ReadLine());
Asesino asesino = new Asesino(victimas);
while (asesino.cantVictimasAsesinada != victimas)
{
Console.WriteLine("Persona asesinada: {0}", asesino.asesinar());
}
Console.ReadLine();
}
}
class Asesino
{
private int[] victimas;
// Indica el numero de la victima cayo aleatoriamente
private int victima;
// LLevamos la cuenta de cuantas victimas han sido asesinadas
private int victimasAsesinadas;
public int cantVictimasAsesinada { get { return victimasAsesinadas; } }
// Nuestro objeto que trabajara con variables aleatorias
Random random;
public Asesino(){ }
public Asesino(int victimas)
{
victimasAsesinadas = 0;
this.victimas = new int[victimas];
for (int i = 0; i < this.victimas.Length; i++)
{
this.victimas[i] = i + 1;
}
random = new Random();
}
public int asesinar()
{
do
{
victima = random.Next(0, victimas.Length);
} while (victimas[victima] == 0);
// Establecemos la posicion de la casilla en 0 para indicar que la victima ya fue seleccionada
victimas[victima] = 0;
// Aumentamos el numero de victimas asesinadas
victimasAsesinadas++;
return victima + 1;
}
}
}
void funcion( char romano[] )
{
char digito_romano[4] = { 'I', 'I', 'I', '\0' };
strcat(romano, digito_romano);
}
switch( numero )
{
case 1:
case 2:
case 3:
for( i = 0; i < numero; i++ )
digito_romano[i] = letras[cant_decimal][0];
break;
case 4:
for( i = 0; i < 2; i++ )
digito_romano[i] = letras[cant_decimal][i];
break;
case 5:
digito_romano[0] = letras[cant_decimal][1];
i++;
break;
case 6:
case 7:
case 8:
digito_romano[0] = letras[cant_decimal][1];
for( i = 1; i <= numero - 5; i++ )
digito_romano[i] = letras[cant_decimal][0];
break;
case 9:
digito_romano[0] = letras[cant_decimal][0];
digito_romano[1] = letras[cant_decimal][2];
i = 2;
break;
}
digito_romano[i] = '\0';
char letras[4][3] = { 'I', 'V', 'X',
'X', 'L', 'C',
'C', 'D', 'M',
'M'};
Cita de: ABDERRAMAH en 27 Abril 2014, 22:00 PM
desde la ignorancia incluso podemos afirmar que una línea recta se cruzará siempre con su punto de partida si es suficientemente larga.
Cita de: ignorantev1.1 en 27 Abril 2014, 18:51 PM
Bueno, la tierra es plana, pero tiene 2 caras, si camino y no noto que caigo del plano, supondré que entre las caras de la tierra hay unos rodillos que mueven la superficie de la tierra, los cuales se mueven cuando camino, vaya la rendundancia...