fork(1) download
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. int main(void) {
  5. int x[8];
  6. printf("Gerando 10 valores aleatorios:\n");
  7. for (int i = 0; i < 8; i++) {
  8. scanf("%d", &x[i]);
  9. if (x[i] == 3) {
  10. int sorteado = -1;
  11. while ((sorteado = rand() % 8) != i); //repete até achar um valor aceitável
  12. x[i] = sorteado;
  13. } else {
  14. x[i] = rand() % 8;
  15. }
  16. printf("[%d] = %d\n", i, x[i]);
  17. }
  18. }
Success #stdin #stdout 0s 2172KB
stdin
1
2
3
4
3
2
1
2
stdout
Gerando 10 valores aleatorios:
[0] = 7
[1] = 6
[2] = 2
[3] = 4
[4] = 4
[5] = 2
[6] = 4
[7] = 0