
RonaldoRG
Membros-
Total de itens
259 -
Registro em
-
Última visita
Tudo que RonaldoRG postou
-
Qual é a mensagem de erro?
-
Aqui deu certo, olha o código que testei aqui: int main(void) { int lin, col, a[3][3]={{1,0,0},{0,1,0},{0,0,1}}; for (lin=0;lin<3;lin++) { for (col=0;col<3;col++) { if((lin != col && a[lin][col] != 0) || (lin==col && a[lin][col]!=1)) { printf("Não e matriz identidade"); break; } } } } Você tá inicializando a matriz corretamente? Abraço.
-
Não entendi essa logica sua if (a[lin][col]==2) { printf ("\tA Matriz %c identidade",130); } A matriz identidade é dessa forma: 1 0 0 0 1 0 0 0 1 Tenta assim: for (lin=0;lin<3;lin++) { for (col=0;col<3;col++) { if((lin != col && a[lin][col] != 0) || (lin==col && a[lin][col]!=1)) { printf("Não e matriz identidade"); break; } } } Não testei o código, fiz de cabeça. Qualquer coisa posta ai.
-
Valeu Dopus pela explicação. Tudo entendido.
-
Muito legal, essa não sabia. Você poderia explicar o que ':' faz? E também porque só funciona dentro da estrutura e não dentro do main. Abraço.
-
Por que você não usa o resto da divisão '%'? Por exemplo: V= 10 V = (V + 1) % 11 Dai V vai ser 0.
-
(Resolvido) Retornar ponteiro para matriz bidimensional.
pergunta respondeu ao == Douplus == de RonaldoRG em C, C++
Testei pela segunda vez agora e deu certo (???). Acho que fiz alguma coisa errada na primeira vez. Bom eu não entendi o objetivo dessa função, pensei que era para criar a matriz. De fato é uma alternativa meio estranha, mas se funciona ai tá valendo. Abraço. -
(Resolvido) Retornar ponteiro para matriz bidimensional.
pergunta respondeu ao == Douplus == de RonaldoRG em C, C++
Isso deu certo???? #include <stdio.h> char **retarray(void) { static char *abra[3][10] = { { "abra", "kadabra", "alakazam" }, { "bulbasaur", "ivysaur", "venusaur" }, { "um", "dois", "tres", "quatro" } }; printf("%s\n", abra[0][0]); return abra[0]; } int main(void) { char **str; str = retarray(); printf("%s\n", str[0]); return 0; } Que compilador você usa? Aqui no gcc não funciona. Tenta esse código aqui pra ver se funciona: int **retarray(void) { static int **tridmat; tridmat = (int**) malloc(3 * sizeof(int*)); for(int i=0; i<3; i++) tridmat[i] = (int*) malloc(10 * sizeof(int)); tridmat[0][0] = 3; tridmat[0][1] = 6; tridmat[0][2] = 9; printf("%d\n", tridmat[0][0]); return tridmat; } int main(void) { int **tridmat; tridmat = retarray(); printf("%d\n", tridmat[0][1]); return 0; } Abraço. -
Pela mensagem de erro, ele não tá podendo abrir o arquivo '../../net/shr-pp.h'. Veja se ele tá no mesmo lugar dos seus fontes. Quanto ao erro do char*, poste a mensagem de erro do compilador. Pra mim fica difícil te ajudar nesse erro dos includes porque é complicado visualizar os arquivos aqui. Me parece que você tá compilando um projeto grande. Verifica as linkagens também. Qualquer coisa posta ai. Abraço.
-
Verifica os includes se estão corretos. Veja se o arquivo que contém as funções que ele dá erro se está sendo chamado. Abraço.
-
Os tipos std::string podem ser comparado com o == ou !=. std::string cpf1("123.456.789-00"); std::string cpf2("111.111.111-11"); if( cpf1 != cpf2 ) { std::cout << "CPF inválido!!!" << std::endl; }
-
Tem a função abs() da biblioteca math.h
-
Programa para cálculo de números primos
pergunta respondeu ao Rafael K. Arakaki de RonaldoRG em Tutoriais & Dicas - C, C++
Agora essa forma só funciona pra descoberta de primos em um intervalo de 2 até n. Para dizer se um determinado número é primo ou não ai não rola. Outra coisa interessante também é que não precisa testar com os números pares, pois o único par primo é 2. Portanto basta testar primeiro se é divisível por 2, caso negativo verifica o restante começando de 3 e ir pulando de dois em dois (3, 5, 7, 9, 11, ...). for(i=3; i<=RaizdeN; i=i+2) Abraço. -
Programa para cálculo de números primos
pergunta respondeu ao Rafael K. Arakaki de RonaldoRG em Tutoriais & Dicas - C, C++
Muito bom. A novidade para mim foi o custo computacional de "%". Parabéns pela iniciativa. Abraço. -
Tenta esse código: #include <stdio.h> #include <conio.h> int main() { float num1, num2; printf("\n\n\n Insira o numero 1: "); scanf("%f", &num1); printf("\n Insira o numero 2: "); scanf("%f", &num2); if (num1>num2) { printf("\n\n\n O primeiro numero e maior: %4.2f",num1); } else if(num1<num2) { printf("\n\n\n O segundo numero e maior: %4.2f",num2); } getch(); return(0); } Aqui funcionou. Abraço.
-
Seu erro tá qui: else (num1<num2); Tira o ponto e virgula no final do else que resolve. Com esse ponto e virgula ai você quebrou o comando else. Abraço.
-
Seria bom você postar a saída do compilador pra a gente ver qual o erro e qual linha acontece. Mas olhando o seu código parece que o erro tá aqui: ... float Med[i]; ... Na declaração do vetor você tem que especificar o tamanho dele. Ou você pode tentar isso: ... printf("Digite o numero de medicoes a somar: "); scanf("%d",&n); float Med[n]; ... Muita gente condena essa forma, preferem usar alocação dinâmca usando ponteiros, malloc. Se tiver usando C++ pode fazer assim: ... printf("Digite o numero de medicoes a somar: "); scanf("%d",&n); float *Med= new float[n]; ... Abraço.
-
Pelo que vejo nesse código, você tá armazenando os dados em vetores mas o número do crachá não, ele tá sempre sendo guardado na variável VC. Acho que você teria que fazer como fez com os outros: ... gotoxy(20,8);printf("Numero do cracha:"); scanf("%d",&VC[i]); ... Outra coisa é esse "i=30;" que tem depois do ultimo scanf. Se quer ler 15 crachás então essa parte tá embanando tudo. Retira essa linha "i=30;". Qualquer coisa posta ai. Abraço.
-
É porque tá faltando o G++. O ubuntu vem com o GCC, mas pra compilar códigos em C++ tem que instalar o G++. Vá no sinaptic e procurar pelo G++ e manda instalar que ele vai baixar na net e instalar automaticamente e pronto. Abraço.
-
while( fread( &ler[cad].nome, sizeof(struct sdados), 1, fp ) == 1 ) No lugar do "cad" não seria "cont"? Outra questão, não seria "&ler[cont]" ao invés de "&ler[cont].nome". Usando da ultima forma você tá lendo e armazenando na variável "ler[cad].nome".
-
A principio notei que você tá declarando os vetores n e N com o tamanho de 1, e depois tá usando n[2], N[5]. Você tem que declarar n e N com o tamanho máximo que vai usar. Como eu vejo que você tem n[6] e N[6], declara com 7 posições: int n[7], N[7]; Vê se dá certo agora. Abraço.
-
Posta o seu código que facilita o pessoal te ajudar. Quanto a pergunta, você tem que alocar previamente a memória do tamanho certo que vai precisar.
-
Quanto a copiar pra OPT, cada pasta no sistema de arquivo tem uma finalidade especifica, não é bom ficar copiando coisas assim não, pra manter organizado o sistema de arquivos. Mas caso você queira copiar digita no terminal "sudo nautilus" sem as aspas, digita a senha e quando abrir a janela você faz o que você quer. Quanto ao ./configure, deve ser então que basta compilar digitando: make Depois: sudo make install Como eu disse é bom ler o arquivo install ou readme, que deve informar os procedimentos corretos. Abraço.
-
Não, você não tá entendendo o que eu to te falando. Não é pra copiar e colar em lugar nenhum não. A primeira coisa que se tem que fazer é extrair o arquivo xampp 1.7.2.tar.gz, clicando com o botão direito nele e escolhendo a opção "Extrair Aqui". Depois disso vai aparecer no mesmo local uma pasta com o nome xampp 1.7.2. Faz essa parte depois posta se conseguiu.
-
O gerenciador de pacote é quando você abre o arquivo .tar.gz. Não precisa abrir é só clicar com o botão direito no arquivo e escolher a opção "extrair aqui" para ele descompactar o seu arquivo.