fork download
  1. #include <iostream>
  2. #include <iomanip>
  3. using namespace std;
  4.  
  5. int main() {
  6. string induk1, induk2;
  7. cout << "Masukkan gen induk 1 (contoh: AA, Aa, aa): ";
  8. cin >> induk1;
  9. cout << "Masukkan gen induk 2 (contoh: AA, Aa, aa): ";
  10. cin >> induk2;
  11.  
  12. int dominan = 0, resesif = 0, total = 0;
  13.  
  14. // Membentuk kombinasi gen anak F1
  15. for (int i = 0; i < 2; i++) {
  16. for (int j = 0; j < 2; j++) {
  17. string anak = "";
  18. anak += induk1[i];
  19. anak += induk2[j];
  20. total++;
  21.  
  22. // Jika ada huruf besar, berarti dominan
  23. if (anak.find('A') != string::npos)
  24. dominan++;
  25. else
  26. resesif++;
  27. }
  28. }
  29.  
  30. cout << fixed << setprecision(2);
  31. cout << "\nHasil Persilangan F1:" << endl;
  32. cout << "Dominan (A): " << (dominan * 100.0 / total) << "%" << endl;
  33. cout << "Resesif (a): " << (resesif * 100.0 / total) << "%" << endl;
  34.  
  35. return 0;
  36. }
Success #stdin #stdout 0.01s 5284KB
stdin
2 2
0 0
0 0
stdout
Masukkan gen induk 1 (contoh: AA, Aa, aa): Masukkan gen induk 2 (contoh: AA, Aa, aa): 
Hasil Persilangan F1:
Dominan (A): 0.00%
Resesif (a): 100.00%