// 4a.cpp
#include <iostream>
#include <cstdio>
#include <ctime>
using namespace std;
void inserta(char* car1,int m, char* car2, int n, char* pnueva, int idx);
void ADN(int n, char *car);
int main() {
int m, n, y;
char cad1[20];
char cad2[20];
char nueva[20];
char *car1;
char *car2;
char *pnueva;
int idx;
srand(time(nullptr));
cout<<"Longitud de la primera cadena= ";
cin>>m;
cout<<"Longitud de la segunda cadena= ";
cin>>n;
car1 = cad1;
car2 = cad2;
ADN(m, car1);
ADN(n, car2);
cout<<endl<<"Cadena 1: "<<cad1;
cout<<endl<<"Cadena 2: "<<cad2;
cout<<"\nindice= ";
cin>>idx;
pnueva = nueva;
inserta(car1, m, car2, n, pnueva, idx);
cout<<"Nueva Cadena: "<<nueva<<endl;
return 0;
}
void inserta(char* car1, int m, char* car2, int n, char* pnueva, int idx) {
for(int i=0; i<idx; ++i) {
*pnueva=*car1;
pnueva++;
car1++;
}
for(int i = idx; i<idx+n; ++i) {
*pnueva = *car2;
pnueva++;
car2++;
}
int p = idx;
for(int j=idx+n; j<m+n; ++j) {
*pnueva = *car1;
pnueva++;
car1++;
}
*pnueva='\0';
}
void ADN(int n, char *car) {
int i;
char simb;
for (int j=0; j<n; ++j) {
i = rand()%4+1;
if (i == 1)
simb = 'A';
if (i == 2)
simb = 'C';
if (i == 3)
simb = 'G';
if (i == 4)
simb = 'T';
*car = simb;
car++;
}
*car='\0';
}