MinasCoders
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Ir para baixo
avatar
danield1591998
Mensagens : 1
Data de inscrição : 13/04/2017

Ajuda - URI 1237 Empty Ajuda - URI 1237

Qui maio 04 2017, 19:45
Estou recebendo Runtime Error, não faço a minima ideia do motivo. Usei C++ porque ele é um pouco mais amigável que o C, além do mais, não há muita diferença.
Na minha maquina tudo roda perfeitamente, os resultados são os mesmos, mas quando submeto o código recebo essa mensagem de "Runtime Error". O que está errado?
Código
Código:
#include <iostream>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>

using namespace std;

int main()
{
    string texto1,texto2;
    int maior, tamanhoString1,tamanhoString2,substring;
    char *vetor1, *vetor2, *v1, *v2;
    while(getline(cin,texto1)){
        getline(cin,texto2);
        maior = substring = tamanhoString1 = tamanhoString2 = 0;
        tamanhoString1 = texto1.length() + 1;
        vetor1 = (char *) calloc(tamanhoString1,sizeof(char));
        tamanhoString2 = texto2.length() + 1;
        for(int i=0;i<tamanhoString1; i++){
            strcpy(vetor1,texto1.c_str());
        }
        vetor2 = (char *) calloc(tamanhoString2,sizeof(char));
        for(int i=0;i<tamanhoString1; i++){
            strcpy(vetor2,texto2.c_str());
        }
        for(int i=0;i<tamanhoString2; i++){
            strcpy(vetor1,texto1.c_str());
        }
        if(tamanhoString1>tamanhoString2){
            maior = tamanhoString1;
            v1 = vetor1;
            v2 = vetor2;
        } else {
            maior = tamanhoString2;
            v1 = vetor2;
            v2 = vetor1;
        }
        int menor = tamanhoString1+tamanhoString2-maior;
        int contador,posicao;
        contador = posicao = 0;
        for(int i=0; i<maior-1; i++){
            posicao = i;
            for(int j=0; j<menor-1; j++){
                if(v1[posicao]==v2[j]){
                    contador++;
                    posicao++;
                }
            }
            if(substring<contador){
                substring = contador;
            }
            contador = 0;
        }
        cout<<substring<<endl;
    }
    free(v1);
    free(v2);
    free(vetor1);
    free(vetor2);
    return 0;
}
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos