estou realizando um exercício ao qual me foi repassado, nele consiste em executar um programa para receber uma quantidade de no mínimo 10 caracteres e gerar uma senha onde o resultado deve seguir o seguinte processo:
dividir os caracteres gerais em três partes iguais
onde será escolhida a última letra de cada parte, e concatenado alternando com a quantidade de cada parte.
Ex: 10 caracteres= ABC (última letra C, qtd caracteres 3) DEF (última letra F, qtd caracteres 3) GHIJ (última letra J, qtd caracteres 4) senha gerada= C3F3J4
O problema é que de acordo com o código que eu tenho gerado, ao dividir a string em três partes (sendo uma variável inteira) basicamente o programa entrega: ABC DEF GHIJ
mas quando é adicionado mais um caractere ao modelo, a divisão em partes "iguais" não acontece entregando: ABC DEF GHIJL
-Resumindo, gostaria de gerar um código onde o programa me entregaria da seguinte forma: ABC DEFG HIJL
-Acredito que o erro deve ocorrer pelo fato da variável Nome_3 ser inteira, o que desprezaria o resto da divisão, porém, os substrings utilizados não recebem double e eu não sei como jogar este resto ou estes restos nas demais partes da divisão.
segue o código que venho tentando:
Console.Write("Digite um nome com no mínimo 10 caracteres: "); string Nome = Console.ReadLine();
int Tamanho_Nome = Nome.Length;
int Nome_3 = Tamanho_Nome / 3;
string Parte_A = Nome.Substring (0, Nome_3);
string Parte_B = Nome.Substring (Nome_3, Nome_3);
string Parte_C = Nome.Substring ((Tamanho_Nome-Nome_3));
int Tamanho_A = Parte_A.Length;
int Tamanho_B = Parte_B.Length;
int Tamanho_C = Parte_C.Length;
string ConcF_1 = Parte_A.Substring(Tamanho_A - 1);
string ConcF_2 = Parte_B.Substring(Tamanho_B - 1);
string ConcF_3 = Parte_C.Substring(Tamanho_C - 1);
Console.WriteLine("A Terceira senha é: " + ConcF_1+Tamanho_A+ConcF_2+Tamanho_B+ConcF_3+Tamanho_C);
Console.ReadLine();