Ver Mensaje Individual
  #4 (permalink)  
Antiguo 31/07/2013, 19:11
sam90
 
Fecha de Ingreso: abril-2010
Ubicación: Rosario
Mensajes: 1.850
Antigüedad: 14 años, 7 meses
Puntos: 228
Respuesta: Cuadro de vignere

Código C++:
Ver original
  1. void ABC(char  n)
  2. {
  3.     n = n - 'A';
  4.     for(i = 0; i< 26;i++) {
  5.         cout <<  (char)  (n + 'A')  << " " ;
  6.         n = (n + 1) % 26;
  7.     }
  8.     cout << endl;
  9. }
  10.  
  11. int main()
  12. {
  13.    ABC('A');
  14.    ABC('B');
  15. }

El operador % devuelve el resto de la división:
10 % 2 = 0
11 % 2 = 1
11 % 5 = 1

Si quieres reemplazar este operador podrías hacer:

Código C++:
Ver original
  1. n++;
  2. if (n == 26) n = 0;

Ya que 26 % 26 es cero. Este operador se suele usar para crear ciclos y así evitar el if. En este caso el ciclo seria desde 0 a 26.... Fijate que pasa si en el for la variable i haces que vaya esta 100 o 200. Vas a ver que se repiten las secuencias una y otra vez.

Solo hay que reemplazar los printf por cout para llevarlo a C++.