elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


  Mostrar Temas
Páginas: [1]
1  Programación / Scripting / [Batch] [C++] Programa para efecto Typewritter en: 7 Marzo 2014, 01:44 am
Buenas hice este programa en c++ para darle un efecto a mis scripts en batch bueno lo que hace es imprimir un texto letra por letra pero antes de imprimir una letra muestra varios caracteres,  ademas de controlar la velocidad con la que se muestran, no se si sea util pero a ver si le sirve a alguien XD.

Uso :

Código:
echoefect "texto" numero_para_la_velocidad_de_escritura

para variable

Código:
echoefect "texto"%variable%"texto" numero_para_la_velocidad_de_escritura


Codigo fuente :

Código
  1. #include <iostream>
  2. #include <string>
  3. #include <fstream>
  4.  
  5. using namespace std;
  6.  
  7. int main(int argc, char *argv[]) {
  8.  
  9. int a=1,b,x0,x1,x2,saltoLinea=79;
  10. char *cadena = argv[1];
  11. int tam=strlen(cadena);
  12. char cad[tam];
  13. char cadaux[tam];
  14.  
  15. // letras a mostrar
  16.  
  17. char *letraa="a";
  18. char *letran="#";
  19. char *letrap="%";
  20. char *letrai="?";
  21. char *letraX="<";
  22. char *letraas="*";
  23. char *letrab="/";
  24. char *letrae=" ";
  25.  
  26.  
  27. // Velocidad de Escritura
  28.  
  29. int vel=atoi(argv[2]);
  30. if ( vel == 0 ) vel=10 ; // si el valor es 0 o no es escrito entonces la velocidad toma el valor de 10
  31.  
  32.  
  33. for (x0=1;x0<tam;x0++) {
  34.  
  35.  
  36. //desacelerador de velocidad de escritura desde los ultimos 6 caracteres
  37.  
  38. if ( x0 >= tam-6 ) {
  39. vel++;
  40. }
  41.  
  42.  
  43. // salto de linea en el caracter 78
  44.  
  45. if ( x0 == saltoLinea ){
  46. b=a-1;
  47. strncpy(cadaux, cadena, tam);
  48. cadaux[tam] = '\0';
  49. cout << endl ;
  50. memset (cadaux, '\r' , b);
  51. strncpy(cadena, cadaux, tam);
  52. tam=strlen(cadena);
  53. saltoLinea=saltoLinea+78;
  54. }
  55.  
  56.  
  57.  strncpy(cad, cadena, a);
  58.  cad[a] = '\0';
  59.  cout << "\r" << strncat (cad, letraa, 1) ;
  60. for ( x2=0;x2<=vel;x2++) {
  61. for (x1=0;x1<100000;x1++);
  62. for (x1=0;x1<100000;x1++);
  63. for (x1=0;x1<100000;x1++);
  64. for (x1=0;x1<100000;x1++);
  65. }
  66. cad[a] = ' ';
  67. strncpy(cad, cadena, a);
  68. cad[a] = '\0';
  69.  
  70.  
  71.  cout << "\r" << strncat (cad, letran, 1) ;
  72. for ( x2=0;x2<=vel;x2++) {
  73. for (x1=0;x1<100000;x1++);
  74. for (x1=0;x1<100000;x1++);
  75. for (x1=0;x1<100000;x1++);
  76. for (x1=0;x1<100000;x1++);
  77. }
  78. cad[a] = ' ';
  79. strncpy(cad, cadena, a);
  80. cad[a] = '\0';
  81.  
  82.  
  83.  cout << "\r" << strncat (cad, letrai, 1) ;
  84. for ( x2=0;x2<=vel;x2++) {
  85. for (x1=0;x1<100000;x1++);
  86. for (x1=0;x1<100000;x1++);
  87. for (x1=0;x1<100000;x1++);
  88. for (x1=0;x1<100000;x1++);
  89. }
  90. cad[a] = ' ';
  91. strncpy(cad, cadena, a);
  92. cad[a] = '\0';
  93.  
  94.  
  95.  cout << "\r" << strncat (cad, letraX, 1) ;
  96. for ( x2=0;x2<=vel;x2++) {
  97. for (x1=0;x1<100000;x1++);
  98. for (x1=0;x1<100000;x1++);
  99. for (x1=0;x1<100000;x1++);
  100. for (x1=0;x1<100000;x1++);
  101. }
  102. cad[a] = ' ';
  103. strncpy(cad, cadena, a);
  104. cad[a] = '\0';
  105.  
  106.  
  107.  cout << "\r" << strncat (cad, letraas, 1) ;
  108. for ( x2=0;x2<=vel;x2++) {
  109. for (x1=0;x1<100000;x1++);
  110. for (x1=0;x1<100000;x1++);
  111. for (x1=0;x1<100000;x1++);
  112. for (x1=0;x1<100000;x1++);
  113. }
  114. cad[a] = ' ';
  115. strncpy(cad, cadena, a);
  116. cad[a] = '\0';
  117.  
  118.  
  119.  cout << "\r" << strncat (cad, letrab, 1) ;
  120. for ( x2=0;x2<=vel;x2++) {
  121. for (x1=0;x1<100000;x1++);
  122. for (x1=0;x1<100000;x1++);
  123. for (x1=0;x1<100000;x1++);
  124. for (x1=0;x1<100000;x1++);
  125. }
  126. cad[a] = ' ';
  127. strncpy(cad, cadena, a);
  128. cad[a] = '\0';
  129.  
  130.  
  131.  cout << "\r" << strncat (cad, letrae, 1) ;
  132. for ( x2=0;x2<=vel;x2++) {
  133. for (x1=0;x1<100000;x1++);
  134. for (x1=0;x1<100000;x1++);
  135. for (x1=0;x1<100000;x1++);
  136. for (x1=0;x1<100000;x1++);
  137. }
  138.  
  139.  
  140.  a++;
  141.  }
  142.  
  143. cout << "\r" << cadena << endl ;
  144.  
  145. for (x0=-9999999;x0<9999999;x0++){
  146. for (x0=-9999999;x0<9999999;x0++);
  147. }
  148. return 0;
  149. }
  150.  
  151. /*
  152. realizado por Noe
  153. the_bird_of_the_hermes_is_my_name@hotmail.com
  154. */
  155.  
  156.  


El Code lo pueden modificar ( si lo mejoran quisiera que me manden el nuevo codigo XD)


si quieren en ejecutable directamente para usar :

http://www.noe-bo.herobo.com/pro-win/echoefect.zip




Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines