Jump to content

Search the Community

Showing results for tags 'algoritmo'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Q&A Desenvolvimento
    • Perguntas e respostas rápidas
  • Desenvolvimento e Banco de Dados
    • HTML e CSS
    • Java
    • Javascript
    • .NET
    • PHP
    • Python
    • Ruby
    • Mobile
    • Ambientes de Desenvolvimento
    • Arquitetura e Métodos Ágeis
    • Banco de Dados
    • DevOps
    • Desenvolvimento de Games
    • E-Commerce e Pagamentos Online
    • SEO e Otimizações
    • WordPress
    • Algoritmos & Outras Tecnologias
  • Design e Produto
    • Fotografia
    • Photoshop
    • Design de interfaces e UX
    • Edição/Produção de Vídeos
    • Marketing Online
    • Desenho, Ilustração e 3D
  • Entretenimento e uso pessoal
    • Geral
    • Segurança & Malwares
    • Gadgets e wearable
    • Softwares e Apps
    • Entretenimento

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Google+


Hangouts


Skype


Twitter


deviantART


Github


Flickr


LinkedIn


Pinterest


Facebook


Site Pessoal


Localização


Interesses

Found 128 results

  1. Boa tarde pessoal! Tenho que fazer um programa em C# que realize o calculo de uma equação de 2° Grau, porem é necessário realizar algumas verificações utilizando IF, Else e estou tendo dificuldade em realizar estas verificações, gostaria de saber se está correto o que eu fiz ou se tem algum outro modo, segue questão em anexo. Muito Obrigado! using System; namespace equacaoSegundoGrau { class equacacao { static void Main(string[] args) { double a, b, c, delta; Console.WriteLine("Informe o coeficiente A"); a = double.Parse(Console.ReadLine()); Console.WriteLine("Informe o coeficiente B"); b = double.Parse(Console.ReadLine()); Console.WriteLine("Informe o coeficiente C"); c = double.Parse(Console.ReadLine()); // mesma coisa que a de baixo delta = (b * b) - 4 * a * c; delta = Math.Pow(b, c) - 4 * a * c; if ((a == 0) && (b == 0) && (c != 0)) { Console.WriteLine("Coeficientes informados incorretamente."); } else if ((a == 0) && (b != 0)) { Console.WriteLine("Essa é uma equação de primeiro grau e deverá ser informado o valor da raiz real da equação."); } else if (delta < 0) { Console.WriteLine("Esta equação não possui raízes reais"); } else if (delta == 0) { Console.WriteLine("Esta equação possui duas raízes reais iguais e informar o valor das raízes da equação." + delta); } else if (delta > 0) { Console.WriteLine("Esta equação possui duas raízes reais diferentes."); Console.WriteLine("O valor desta equação é " + delta); } } } }
  2. Empresa disponibiliza algoritmo do Google em português gratuitamente
  3. Novo algoritmo afina capacidade de previsão em sistemas caóticos
  4. Toshiba afirma ter criado algoritmo mais rápido que supercomputadores Notícia sem a fonte original , não achei nada no site da Toshiba,
  5. soaresgusta

    Dúvida programa que some de 1 a 100

    Boa tarde, exercício pede a seguinte questão:Faça um programa que leia um valor x qualquer e calcule:Y = ( x+1)+(x+2)+(x+3)+(x+4)+(x+5)+...(x+100).Eu não estou conseguindo criar uma função Y na linguagem que some de 1 a 100.#include <stdio.h>#include <stdlib.h>int main (){int Y=0, x, i=1;for (i=1;i<=100;i++);{Y= (x+i);printf("Digite um numero inteiro qualquer: \n");scanf ("%d", x);printf("Y = %d \n", Y);i++;}return (0);}Pela lógica, i varia de 1 a 100, mas quando eu executo o programa ele não soma. Alguém pode me ajudar?
  6. andiroldao

    Problema com NaN em C

    Então, estava trabalhando nesse algoritmo em Portugol e resolvi traduzir para C, porém, se eu entro com dados em veículos maior que 2000, a Média de acidentes em cidades com menos de 2000 veículos de passeio aparece como: -nan. Alguém sabe me dizer onde estou errando? #include <stdio.h> int main(void) { //- Variáveis int codigo, veiculos, acidentes; int codigo_menos_acidente = 0; int codigo_mais_acidente = 0; int indice_menor_cidade = 0; int codigo_menor_cidade = 0; int indice_maior_cidade = 0; int codigo_maior_cidade = 0; int soma_acidentes_menor_2000 = 0; int menor_indice_acidentes = 0; int maior_indice_acidentes = 0; int soma_geral_de_veiculos = 0; int numero_cidades = 0; float media_de_veiculos_cidades = 0; float numero_cidades_veiculos_menor_2000 = 0; float media_de_acidentes_menor_2000 = 0; char continuar_a_pedir_dados = 1; do{ //- Entrada de dados printf("\nEntrada de dados \n\n"); //- Código da cidade; printf("Insira o Código da Cidade: "); scanf("%d", &codigo); //- Número de veículos de passeio; printf("Insira o número de veículos de passeio: "); scanf("%d", &veiculos); //- Número de acidentes de trânsito com vítimas; printf("Insira número de acidentes de trânsito com vítimas: "); scanf("%d", &acidentes); soma_geral_de_veiculos += veiculos; numero_cidades += 1; if(acidentes< indice_menor_cidade || indice_menor_cidade == 0) { codigo_menor_cidade = codigo; indice_menor_cidade = acidentes; } if(acidentes > indice_maior_cidade || indice_maior_cidade == 0) { codigo_maior_cidade = codigo; indice_maior_cidade = acidentes; } if(veiculos < 2000) { soma_acidentes_menor_2000 += acidentes; numero_cidades_veiculos_menor_2000 += 1; } if(acidentes < menor_indice_acidentes || menor_indice_acidentes == 0) { codigo_menos_acidente = codigo; menor_indice_acidentes = acidentes; } if(acidentes > maior_indice_acidentes || maior_indice_acidentes == 0) { codigo_mais_acidente = codigo; maior_indice_acidentes = acidentes; } printf("\nPara inserir novos dados digite \"1\", para sair do programa digite outro valor: "); scanf("%s", &continuar_a_pedir_dados); } while(continuar_a_pedir_dados == '1'); printf("\n\nResultado da pesquisa\n"); media_de_veiculos_cidades = soma_geral_de_veiculos / numero_cidades; media_de_acidentes_menor_2000 = soma_acidentes_menor_2000 / numero_cidades_veiculos_menor_2000; //- Qual o maior índice de acidente de trânsito; printf("\nMaior índice de acidentes: %d\n", maior_indice_acidentes); //- Qual cidade pertence o maior índice de acidente de trânsito; printf("\nCidade com mais acidentes: %.d\n", codigo_maior_cidade); //- Qual o menor índice de acidente de trânsito; printf("\nMenor índice de acidentes: %d\n", menor_indice_acidentes); //- Qual cidade pertence o menor índice de acidente de trânsito; printf("\nCidade com menos acidentes: %d\n", codigo_menor_cidade); //- Qual a média de veículos nas0 cidades juntas; printf("\nMédia de víiculos: %.f\n", media_de_veiculos_cidades); //- Qual a média de acidentes de trânsito nas cidades com menos de 2000 veículos de passeio. printf("\nMédia de acidentes em cidades com menos de 2000 veículos de passeio: %.f\n", media_de_acidentes_menor_2000); printf("\n"); return 0; }
  7. Bom dia! Preciso escrever um código de algoritmo que realiza a conta de conversão de latitudes e longitudes em distância utilizando o Teorema de Pitágoras e não sei por onde começar. Encontrei esse calculo que poderá ser inserido. Triângulo PitagóricoImaginemos 2 pontos P=(x1,y1) e Q=(x2,y2), obtemos a distância entre P e Q, traçando as projeções destes pontossobre os eixos coordenados, obtendo um triângulo retângulo e usando o Teorema de Pitágoras. Pitagoras1.png (682 Bytes) Exibido 36730 vezes Assim, considerando 2 pontos de coordenadas (-22.902778, -43.206667) e (-23.548333, -46.636111)Calculando-se a distância entre eles, tem-se: Pitagoras2.png (2.14 KiB) Exibido 36729 vezes Pitagoras3.png (2.75 KiB) Exibido 36729 vezes A distância em graus resulta 3,4896744O raio da terra tem aproximadamente 6371km.Uma volta na terra tem 2 * pi * raio = 40030000m.Podemos, através de uma regra de 3 simples, obter a conversão do ângulo encontrado para uma distância em metros.
  8. Eu sou novo em Java e estou tentando executar o algoritmo Stable Marrage de GaleShapley, mas ao executá-lo, aparece o seguinte erro: Error: Index 3 out of bounds for length 3 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 3 at br.com.entrada.GaleShapley.calcMatches(GaleShapley.java:48) at br.com.entrada.GaleShapley.<init>(GaleShapley.java:33) at br.com.entrada.GaleShapley1.main(GaleShapley1.java:164) Gale Shapley Marriage Algorithm Sized : 3 Segue o código abaixo: import java.io.BufferedReader; import java.io.DataInputStream; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStreamReader; public class GaleShapley { private int N, engagedCount; private String[][] menPref; private String[][] womenPref; private String[] men; private String[] women; private String[] womenPartner; private boolean[] menEngaged; /** Constructor **/ public GaleShapley (){ } public GaleShapley(String[] m, String[] w, String[][] mp, String[][] wp) { System.out.println("Sized : "+ mp.length); N = mp.length; engagedCount = 0; men = m; women = w; menPref = mp; womenPref = wp; menEngaged = new boolean[N]; womenPartner = new String[N]; calcMatches(); } /** function to calculate all matches **/ private void calcMatches() { while (engagedCount < N) { int free; for (free = 0; free < N; free++) if (!menEngaged[free]) break; for (int i = 0; i < N && !menEngaged[free]; i++) { int index = womenIndexOf(menPref[free]); if (index < womenPartner.length && womenPartner[index] != null ) { womenPartner[index] = men[free]; menEngaged[free] = true; engagedCount++; } else { String currentPartner = womenPartner[index]; if (morePreference(currentPartner, men[free], index)) { womenPartner[index] = men[free]; menEngaged[free] = true; menEngaged[menIndexOf(currentPartner)] = false; } } } } printCouples(); } /** function to check if women prefers new partner over old assigned partner **/ private boolean morePreference(String curPartner, String newPartner, int index) { for (int i = 0; i < N; i++) { if (womenPref[index].equals(newPartner)) return true; if (womenPref[index].equals(curPartner)) return false; } return false; } /** get men index **/ private int menIndexOf(String str) { for (int i = 0; i < N; i++) if (men.equals(str)) return i; return -1; } /** get women index **/ private int womenIndexOf(String str) { for (int i = 0; i < N; i++) if (women.contains(str)) return i; return -1; } /** print couples **/ public void printCouples() { System.out.println("Couples are : "); for (int i = 0; i < N; i++) { System.out.println(womenPartner +" "+ women); } } /** main function **/ public static void main(String[] args) throws IOException{ System.out.println("Gale Shapley Marriage Algorithm\n"); /** list of men **/ String[] m = {"1", "2", "3"}; /** list of women **/ String[] w = {"1", "2", "3"}; /** men preference **/ String[][] mp = null ; /** women preference **/ String[][] wp= null ; try{ FileInputStream fstream = new FileInputStream("src/input.txt"); DataInputStream in = new DataInputStream(fstream); BufferedReader br = new BufferedReader(new InputStreamReader(in)); String strLine; int line=0; int k=0; int n=0; int i=0; while ((strLine = br.readLine()) != null) { if(line==0){ n =Integer.valueOf(strLine.trim()); mp=new String[n][n]; wp=new String[n][n]; line++; } else{ String[] preferences=strLine.split(" "); if(i<n){ mp=preferences; } else{ if(i-n < w.length) { wp[i-n]=preferences; } } i++; } } in.close(); GaleShapley gs = new GaleShapley(m, w, mp, wp); }catch (Exception e){//Catch exception if any e.printStackTrace(); System.err.println("Error: " + e.getMessage()); } } }
  9. Então queria saber se é possível fazer a conexão entre o Delphi e uma Impressora Não Fiscal (uma simples)? É que estou desenvolvendo um programa em Delphi, e minha ideia era que através de um button, fosse impresso algo que está escrito em um DBEdit (Pode ser outro componente editável, desde que seja BD, pois estou mexendo com banco). E não tenho ideia de como desenvolver um código para que isto ocorra, se alguém souber e puder ajudar, agradeço. Estou realmente precisando.
  10. Preciso criar um programa em C que converta um vetor de 32 caracteres (recebidos do usuário), e os caracteres que não forem letras devem ser convertidos em espaço em branco mostrando no final o vetor resultante e a quantidade de espaços em branco. Como seria para fazer usando apenas a biblioteca 'stdio.h'?
  11. Sou estudante do 1º Ano do curso técnico em Informática do IFSP, e preciso de ajuda para fazer esse Algoritmo usando o visuAlg. 01) Levando em consideração o início dos sistemas de informatização as informações eram armazenadas em arquivo do tipo texto. Analisando internamente estes arquivos pode-se notar que nada mais são do que matrizes, pois cada coluna representava um campo e cada linha uma tupla. Partindo desta informação construa uma matriz para armazenar o RA, CPF e um código para 40 alunos (no CPF digitar somente os números) e uma matriz que guardará 4 notas de 40 alunos e seus respectivos códigos, criando assim um tipo de relacionamento entre as duas matrizes. O primeiro CPF da matriz 1 representa o aluno que possui as 4 notas da primeira posição da segunda matriz. Após o preenchimento de todos os dados das 2 matrizes você deverá perguntar qual o tipo de consulta deverá ser realizada (1-RA, 2-CPF e 3-Código) se for escolhido a opção 1 deve ser solicitado o RA e pesquisar o mesmo na matriz e mostrar o RA, as 4 notas e a média das 4 notas do aluno, se a opção for 2 você deverá solicitar o CPF e também mostrar o CPF, as 4 notas e a média das 4 notas do aluno e se a opção for 3 você deverá solicitar o CÓDIGO e também mostrar o Código, as 4 notas e a média das 4 notas do aluno. Em ambas as consultas deve ser mostrado a situação do aluno (Aprovado quando a média for no mínimo 6; Recuperação quando a média for no mínimo 4 e não chegar a 6; e Reprovado se a média for inferior a 4). Ao mostrar cada resultado o sistema deve pedir se o usuário deseja fazer uma nova pesquisa. Caso deseje deve digitar S(SIM) para continuar ou N(NÃO) para finalizar.
  12. que leia um número inteiro e uma palavra de forma aleatório e exibir o resultado no final, ao mesmo tempo.
  13. cyyyyber

    heap sort

    oi galera, minha prof pediu um seminario sobre o heap sort. poderiam me passar materiais e alguns algoritmos fáceis para eu estudar? estou perdido. obg
  14. yasuo_mono_dedo

    Visualg (INICIANTE)

    VisualG Minha professora de lógica de programação passou alguns exercícios e preciso da ajuda de vocês O exercício que me acarretou dúvida extrema foi esse: Escreva um programa que leia um número qualquer e apresente-o somente se ele for menor que 100 ou entre 500 e 700 O que me causou dúvida foi que eu ainda não aprendi a fazer isso :/ Quem puder ajudar eu agradeceria <3
  15. programa { inclua biblioteca Matematica funcao inicio() { inteiro hom=0, mul=0, rsim=0, rnao=0, rhsim=0, rmsim=0, n, t=4 real psim, pnao caracter sexo, resp (n == t) { leia ("Informe o Sexo: ", sexo) leia ("Gostou do produto (S/N): ", resp) se (sexo =='1') { hom = hom + 1 se (resp == '1') { rmnao = rmnao + 1 } } senao { se (sexo == '2') { mul = mul + 1 se (resp == '2') { rhsim = rhsim + 1 } } } se (resp == '1') { rsim = rsim +1 } senao { se (resp == '2') { rnao = rnao +1 } } n = n + 1 } psim = 100 * (rmsim / t) pnao = 100 * (rhnao / t) } escreva ("Quantidade de pessoas que responderam sim: ", rsim) escreva ("Quantidade de pessoas que responderam não: ", rnao) escreva ("Porcentagem de mulheres que responderam sim: ", psim) escreva ("Porcentagem de homens que responderam não: ", pnao) }
  16. A outra cara do algoritmo
  17. O exercício propunha fazer duas funções uma para multiplicação e outra para criar uma fatorial, porém devem ser feitas usando apenas operações de soma e subtração bom fiz uma função para multiplicar e esta funcionando porém estou tentando utiliza-la para fazer a fatorial e o resultado sempre da zero ;-; podem me ajudar algoritmo "semnome" var a,b:inteiro funcao multi(a:inteiro;b:inteiro):real var aux:real inicio se a=0 entao retorne 0 senao aux <- 0 enquanto b>0 faca aux <- aux+a b <- b-1 fimenquanto retorne aux fimse fimfuncao funcao fatorial(a:inteiro):real var fat,res:real inicio enquanto fat > 0 faca fat<-a fat <- fat - 1 res <- multi(fat,a) fimenquanto retorne res fimfuncao inicio leia(a) escreval(fatorial(a)) fimalgoritmo
  18. Preciso fazer um programa de controle de comandas de um restaurante , envolvendo struct e arquivos, porém ñ sei por onde começar, alguém pode me ajudar? Estou fazendo da seguinte forma: struct produto{ int codigo_produto; char descrição[50]; double valor; }prod[4]; struct mesa{ int cod_mesa; char setor[30]; int codigo_garçom; }mes[3]; struct garçom{ int codigo_garçom; char nome[70]; }gar[; struct consumo{ int cod_produto,cod_consumo; char data [10]; }
  19. Boa noite estou tento problemas para realizar o tópico 3 alguém poderia me ajudar ?? Ser em algoritmo
  20. Alguém pode me orientar sobre como resolvo o algoritmo abaixo com estruturas de repetição Escrever um algoritmo que lê um número inteiro positivo e que escreve a soma de todos os números inteiros, desde 0 até o valor lido.
  21. Ao sair de um procedimento e entrar em outro, ta apresentando erro quando tento finalizar o programa. Var // Seção de Declarações das variáveis nome: vetor [1..3] de caractere telef: vetor [1..3] de caractere ema: vetor [1..3] de caractere codigo,codigo_contato,codigo_contato_cheio, menu_apagar,opc, opc1: inteiro cont, menu_mostrar,op: inteiro procedimento principal() Inicio // Seção de Comandos, procedimento, funções, operadores, etc... repita escreval ("") escreval ("=== AGENDA TELEFÔNICA ===") escreval ("") escreval ("1. Inserir novo contato") escreval ("2. Apagar contato") escreval ("3. Mostrar todos os contatos") escreval ("4. Sair") escreva ("Digite opcao: ") leia (codigo) limpatela ate (codigo=1) ou (codigo=2) ou (codigo=3) ou (codigo=4) escolha (codigo) caso 1 contato() caso 2 apagar() caso 3 mostrar() caso 4 interrompa fimescolha fimprocedimento //---------------------- NOVO CONTATO ---------------------- procedimento contato() inicio para cont de 1 ate 3 faca limpatela escreval("== INSERIR NOVO CONTATO ==") escreva ("Nome: ") leia (nome[cont]) escreva ("Telefone: ") leia (telef[cont]) escreva ("E-mail: ") leia (ema[cont]) escreval("") escreval("Usuario cadrastrado com sucesso") repita escreval("") escreval("1.Insira novo contato") escreval("2.Voltar ao menu") escreval("") escreva("Digite opção: ") leia(codigo_contato) escolha (codigo_contato) caso 1 escreva("") caso 2 interrompa limpatela principal() outrocaso escreval("") escreval("Opção invalida") escreval("") escreval("Pressione ENTER para voltar") leia(op) limpatela fimescolha ate codigo_contato = 1 fimpara limpatela escreval("") escreval("Lista de contato cheia") repita escreval("") escreval("1.Voltar ao menu") escreval("2.Sair") escreval("") escreval("Digite opção") leia(codigo_contato_cheio) escolha (codigo_contato_cheio) caso 1 limpatela principal() caso 2 interrompa outrocaso escreval("") escreval("Opção invalida") escreval("") escreval("Pressione ENTER para voltar") leia(op) limpatela fimescolha ate codigo_contato_cheio = 1 fimprocedimento //------------------------ Apagar contato------------------------------------ procedimento apagar() inicio limpatela escreval("== APAGAR CONTATO ==") Escreval("") escreva ("Qual contato você quer apagar? ") Escreval("") para cont de 1 ate 3 faca Escreval(cont,". ",nome[cont]) fimpara Escreval("") Escreva("Digite opção:") Leia(opc) se opc >0 entao se opc <4 entao nome[opc]<-"" telef[opc]<-"" ema[opc]<-"" Escreval("") Escreval("Contato Apagado com sucesso") repita escreval("") escreval("1.Apagar outro contato") escreval("2.Voltar ao menu") escreval("3.Sair") escreva("Digite opção:") leia(menu_apagar) Escolha(menu_apagar) caso 1 limpatela apagar() caso 2 limpatela principal() caso3 interrompa outrocaso escreval("") escreval("Opção invalida") escreval("") escreval("Pressione ENTER para voltar") leia(op) senao apagar() fimse fimse fimse fimescolha ate menu_apagar = 3 fimprocedimento //-------------------------- Mostrar todos os contatos --------------------- procedimento mostrar() inicio limpatela escreval("== LISTA DE CONTATOS ==") Escreval("") para cont de 1 ate 3 faca Escreval(cont,". ",nome[cont]) fimpara Escreval("") Escreva("Digite opção:") Leia(opc1) se opc1 >0 entao se opc1 <4 entao limpatela Escreval("Nome: ",nome[opc1]) Escreval("Telefone: ",telef[opc1]) Escreval("E-mail: ",ema[opc1]) repita escreval("") escreval("1.Mostrar outro contato") escreval("2.Voltar ao menu") escreval("") escreva("Digite opção:") Leia(menu_mostrar) Escolha(menu_mostrar) caso 1 limpatela mostrar() caso 2 limpatela principal() outrocaso escreval("") escreval("Opção invalida") escreval("") escreval("Pressione ENTER para voltar") leia(op) senao mostrar() fimse fimse fimescolha limpatela ate menu_mostrar = 1 fimprocedimento inicio // Seção de Comandos principal() Fimalgoritmo
  22. flavionorvel

    Converter linguagem C para visualg

    #include <stdio.h> #include <stdlib.h> // Limites de tamanhos #define MINIMO 2 #define MAXIMO 50 // Variáveis globais int opcao = 0; int linhas = MAXIMO; int colunas = MAXIMO; int matrizA[MAXIMO][MAXIMO]; int matrizB[MAXIMO][MAXIMO]; void limpar_tela(); // Retorna resposta do usuario se quer rodar novamente int rodar_novamente() { int opcao = 0; printf("\n\nDeseja rodar novamente? Digite 1 para SIM e 0 para Não: "); scanf("%d",&opcao); if (opcao == 1 || opcao == 0) { return opcao; } printf("\nOpcao invalida. Escolha novamente."); return rodar_novamente(); } // Recebe valor inteiro do usuario int receber_numero() { int numero = 0; scanf("%d",&numero); if (numero >0) { return numero; } printf("\nNúmero inválido. digite um número positivo.: "); return receber_numero(); } // Valida tamanhos de linhas e colunas int validar_tamanhos(int linhas, int colunas) { if ((linhas >= MINIMO && linhas <= MAXIMO) && (colunas >= MINIMO && colunas <= MAXIMO) && (linhas ! = colunas)) { return 1; } printf("\nLinhas e Colunas devem ser diferentes e ter valores entre %d e %d. Tente novamente.",MINIMO,MAXIMO); return 0; } // Preencher matriz void preencher_matriz(int matriz[MAXIMO][MAXIMO], int linhas, int colunas) { int i,j; for (i = 0 ; i < linhas ; i ++) { for (j = 0 ; j < colunas ; j ++) { printf("\nDigite um valor inteiro para a posicao %d-%d da matriz A: ",i,j); matriz[j] = receber_numero(); } } } // Imprimir matrizes void imprimir_matrizes(int matrizA[MAXIMO][MAXIMO], int matrizB[MAXIMO][MAXIMO], int linhas, int colunas) { int i,j; limpar_tela(); printf("\n\nMATRIZ A\n"); for (i = 0 ; i < linhas ; i++) { for (j = 0 ; j < colunas ; j ++) { printf("\nMATRIZ A POSICAO %d-%d: %d",i,j,matrizA[j]); } } printf("\n\nMATRIZ B (TRANSPOSTA DE A)\n"); for (i = 0 ; i < colunas ; i++) { for (j = 0 ; j < linhas ; j ++) { printf("\nMATRIZ B POSICAO %d-%d: %d",i,j,matrizB[j]); } } } void limpar_tela() { system("@cls||clear"); } // Laço principal int main() { int i,j; do { //Inicializar variáveis opcao = 0; linhas = 0; colunas = 0; i = 0; j = 0; do { printf("\nEntre com o tamanho para linhas: "); linhas = receber_numero(); printf("\nEntre com o tamanho para colunas: "); colunas = receber_numero(); } while (!validar_tamanhos(linhas,colunas)); // entrar com valores para a matriz A preencher_matriz(matrizA, linhas, colunas); // criar matriz transposta de A for(i = 0 ; i < linhas ; i ++) { for(j = 0 ; j < colunas ;j ++) { matrizB[j] = matrizA[j]; } } // Imprimir matrizes imprimir_matrizes(matrizA,matrizB,linhas, colunas); // Pergunta ao usuário se quer continuar opcao = rodar_novamente(); } while (opcao == 1); }me
  23. C.SALLES

    Dev c++ duvida em problema

    Faça um programa leia dois números inteiros e utilize uma função SOMAR que receba esses dois números por parâmetro e retorne a soma dos números inteiros existentes entre eles. Sou iniciante em programação e tentei fazer o programa da tal forma: #include<stdlib.h> #include<math.h> #include<stdio.h> int SOMAR((((int soma;i;n1;n2)))) { return; for (i=n1+1; i<n2; i++) { soma += i; } } int main() { int n1, n2; printf("Informe os números: "); scanf("%d %d", &n1, &n2); printf("\nSoma: %d\n", SOMAR(soma)); return 0; system ("pause"); } Não roda por vários motivos e sinceramente sei nem como resolver
  24. Gui2000

    Código de agenda em C[Resolvido]

    O código é para a colocar 3 letras a partir de 3 nomes diferentes. Ou seja:A-> AdrianoB-> BrunoC->CarolCom isso eu criaria uma agenda.Problema1-Ao eu compara o que tem dentro da letra que como não tem nada seria NULL então ele nem entra no casso que ele é igual a NULL2- Ao receber a posição da outra struct em: aux2=aux->pontpnome, ou seja ele recebe de dentro da struct letras a posição da próxima struct que é de nomes. Ao debuggar ele insinua erro ai também.Caso vejam mais um erro por favor me comuniquem. #include <stdio.h> #include <stdlib.h> #include <string.h> #define tamanho 3 typedef struct nomes vetnome; typedef struct letras letra; struct nomes{ char nome[30]; vetnome *pont; }; struct letras{ char L[4]; vetnome *pontpnome; }; void inserir (letra **let, letra tabEsp[tamanho], vetnome **ini,int qtd); int chave(char nome[30]); int main() { int qtd=0,i=0; char nome[30], resposta[30]; letra tabEsp[tamanho]; for(i=1;i<4;i++) { strcpy(tabEsp.L,"NULL"); } printf("Insira 3 nomes diferentes primeiramente: "); while(qtd<4) { letra *let=(letra *)malloc(sizeof(letra)); vetnome *ini=(vetnome *)malloc(sizeof(vetnome)); let->pontpnome=NULL; ini->pont=NULL; inserir(&let, tabEsp, &ini, qtd); system("pause"); system("cls"); qtd++; } puts("Aqui você irá colocar nomes dentro das 3 listas criadas! :)"); while(resposta!="NAO") { printf("Digite um nome: "); scanf("%s", &nome); letra *let=(letra *)malloc(sizeof(letra)); vetnome *ini=(vetnome *)malloc(sizeof(vetnome)); let=NULL; ini=NULL; inserir(&let, tabEsp, &ini, qtd); printf("Você quer continuar?[Sim/Nao]"); scanf("%s", &resposta); system("pause"); system("cls"); } return 0; } int chave(char nome[30]) { unsigned int resultado= (int)nome[0]%tamanho; if(resultado<0) resultado=-resultado; return resultado; } void inserir (letra **Let, letra tabEsp[tamanho], vetnome **Ini, int qtd) { char nome[30]; puts("Digite um nome: "); scanf("%s", &nome); int chaveres=chave(nome); vetnome *aux2; aux2=Ini; letra *aux; aux=Let; if(chaveres==1) { if(tabEsp[chaveres].L=="NULL") { letra *novo= (letra*) malloc(sizeof(letra)); vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(novo->L,nome[0]); strcpy(name->nome,nome); aux=novo; aux2=name; aux->pontpnome=&aux2; aux2->pont=NULL; return ; } else if(tabEsp[chaveres].L!="NULL") { aux2=aux->pontpnome; while(aux2!=NULL) { aux2=aux2->pont; } vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(name->nome,nome); aux2->pont=name; name->pont=NULL; return; } } if(chaveres==2) { if (tabEsp[chaveres].L==NULL) { letra *novo=(letra *)malloc(sizeof(letra)); vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(novo->L,nome[0]); strcpy(name->nome,nome[30]); aux=novo; aux2=name; aux->pontpnome=&aux2; return; } else if(tabEsp[chaveres].L!=NULL) { aux2=aux->pontpnome; while(aux2!=NULL) { aux2=aux2->pont; } vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(name->nome,nome[30]); aux2->pont=&name; name->pont=NULL; return; } } if(chaveres==3) { if (tabEsp[chaveres].L==NULL) { letra *novo=(letra *)malloc(sizeof(letra)); vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(novo->L,nome[0]); strcpy(name->nome,nome[30]); aux=novo; aux2=name; aux->pontpnome=&aux2; return; } else if(tabEsp[chaveres].L!=NULL) { aux2=aux->pontpnome; while(aux2!=NULL) { aux2=aux2->pont; } vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(name->nome,nome); aux2->pont=name; name->pont=NULL; return; } } if (chaveres>3) { puts("Espaço não reservado!"); } } CÓDIGO RESOLVIDO #include <stdio.h> #include <stdlib.h> #include <string.h> #define tamanho 3 typedef struct nomes vetnome; typedef struct letras letra; struct nomes{ char nome[30]; vetnome *pont; }; struct letras{ char L[4]; vetnome *pontpnome; }; void inserir (letra **let, letra tabEsp[tamanho], vetnome **ini,int qtd); int chave(char nome[30]); int main() { int qtd=1,i=0; char nome[30], resposta[30]; letra tabEsp[tamanho]={NULL,NULL,NULL}; printf("Insira 3 letras diferentes, você guardará nomes com essas iniciais depois desse processo: "); while(qtd<4) { letra *let=(letra *)malloc(sizeof(letra)); vetnome *ini=(vetnome *)malloc(sizeof(vetnome)); let->pontpnome=NULL; ini->pont=NULL; inserir(&let, tabEsp, &ini, qtd); system("pause"); system("cls"); qtd++; } puts("Aqui você irá colocar nomes dentro das 3 listas criadas! :)"); while(resposta!="NAO") { letra *let=(letra *)malloc(sizeof(letra)); vetnome *ini=(vetnome *)malloc(sizeof(vetnome)); let=NULL; ini=NULL; inserir(&let, tabEsp, &ini, qtd); printf("Você quer continuar?[Sim/Nao]"); scanf("%s", &resposta); system("pause"); system("cls"); } return 0; } int chave(char nome[30]) { unsigned int resultado= (int)nome[0]%tamanho; if(resultado<0) resultado=-resultado; return resultado; } void inserir (letra **Let, letra tabEsp[tamanho], vetnome **Ini, int qtd) { char nome[30]; puts("Digite um nome: "); scanf("%s", &nome); int chaveres=chave(nome); vetnome *aux2; aux2=Ini; letra *aux; aux=Let; if(chaveres==1) { if(tabEsp[chaveres].L==NULL) { letra *novo= (letra*) malloc(sizeof(letra)); vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(novo->L,nome[0]); strcpy(name->nome,nome); aux=novo; aux2=name; aux->pontpnome=&aux2; aux2->pont=NULL; return ; } else if(tabEsp[chaveres].L!=NULL) { aux2=aux->pontpnome; while(aux2!=NULL) { aux2=aux2->pont; } vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(name->nome,nome); aux2=name; aux2->pont=NULL; return; } } if(chaveres==2) { if (tabEsp[chaveres].L==NULL) { letra *novo=(letra *)malloc(sizeof(letra)); vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(novo->L,nome[0]); strcpy(name->nome,nome[30]); aux=novo; aux2=name; aux->pontpnome=&aux2; return; } else if(tabEsp[chaveres].L!=NULL) { aux2=aux->pontpnome; while(aux2!=NULL) { aux2=aux2->pont; } vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(name->nome,nome[30]); aux2->pont=&name; name->pont=NULL; return; } } if(chaveres==3) { if (tabEsp[chaveres].L==NULL) { letra *novo=(letra *)malloc(sizeof(letra)); vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(novo->L,nome[0]); strcpy(name->nome,nome[30]); aux=novo; aux2=name; aux->pontpnome=&aux2; return; } else if(tabEsp[chaveres].L!=NULL) { aux2=aux->pontpnome; while(aux2!=NULL) { aux2=aux2->pont; } vetnome *name=(vetnome *)malloc(sizeof(vetnome)); strcpy(name->nome,nome); aux2->pont=name; name->pont=NULL; return; } } if (chaveres>3) { puts("Espaço não reservado!"); } }
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.