Pesquisar na Comunidade
Mostrando resultados para as tags ''C++''.
Encontrado 65 registros
-
/* Desenvolver um programa para realizar a correção de um prova de múltipla escolha. Os dados iniciais a serem lidos são: - A quantidade de candidatos (N) e - A quantidade de questões aplicadas (M). As respostas possíveis que poderão ser aceitas são: A, B, C, D e E. O primeiro conjunto de dados a ser lido será o gabarito com as respostas corretas das M questões. Após o gabarito, serão lidos os nomes as respostas de cada candidato. Os valores das questões são iguais. A nota máxima é 10 e a de classificação é 5. As estruturas que deverão ser utilizadas são: O programa deverá: a) Gerar o vetor NOTA; b) Apresentar o relatório geral contendo o nome do candidato e sua nota; c) Calcular e apresentar a média geral dos candidatos; d) Apresentar a quantidade e o percentual de classificados e desclassificados; e) Apresentar o relatório de candidatos classificados; f) Apresentar a melhor nota obtida e seu(s) respectivo(s) candidato(s); g) Gerar o vetor ACERTOS com o percentual correspondente e apresentá-lo. */ #include <iostream> using namespace std; // torna desnecessária o uso do comando standard (std) antes das variáveis main() { setlocale(LC_ALL,"Portuguese"); int M[2][2],l, c, nota=0, soma=0, media=0, i=0, j=0; string nome[j]; cout<<"Digite seu nome"<<endl; cin>>nome[j]; for(l=0;l<2;l++) { for (c=0;c<2;c++) { cout<<"["<<l<<"]["<<c<<"] : "; cin>>M[l][c]; } } for (l=0;l<2;l++) { for (c=0;c<2;c++) { cout<<M[l][c]<<" "; } cout<<endl; } cout<<"Matriz A "<<" Vetor B "<<endl; for (l=0;l<2;l++) { soma=0; for (c=0;c<2;c++) { cout<<M[l][c]<<" | "; soma=soma+M[l][c]; media=soma/3; } cout<<" = "<<media<<endl; } cout<<"Somatório da colunas: "<<endl; for (c=0;c<2;c++) { soma=0; for (l=0;l<2;l++) { soma=soma+M[l][c]; } cout<<soma<<endl; } cout<<"Somatório da Diagonal: "<<endl; for (l=0;l<2;l++) { soma=0; for (l=0;l<2;l++) { soma=soma+M[l][l]; } cout<<soma<<endl; } } A pergunta é, como imprimir os nomes na coluna 0 e linhas de 1 a 5 e como fazer para que as respostas possíveis que poderão ser aceitas sejam: A, B, C, D e E?
-
Como que eu faço pra imprimir todos os elmentos da lista abaixo #include <iostream> #include<locale.h> #include<stdlib.h> #include<stdio.h> #include <ctype.h> #include<string> #include<limits> #include <string> using namespace std; template <class tipo> class No { public: tipo info; No <tipo> *prox; No(tipo elem, tipo nome, tipo descricao, No <tipo> *p); }; template <class tipo> class Lista{ private: No <tipo> *inicio; public: Lista(); ~Lista(); void insert(tipo elem,tipo nome, tipo descricao); int remove(tipo elem,tipo nome, tipo descricao); int empty(); }; template <class tipo> No <tipo> :: No(tipo elem,tipo nome, tipo descricao, No <tipo> *p){ info=elem; info= nome; info=descricao; prox=p; } template <class tipo> Lista <tipo> :: Lista() {inicio=NULL;} template <class tipo> int Lista <tipo> :: empty(){ if(!inicio) return 1; else return 0; }; template <class tipo> void Lista <tipo> :: insert(tipo elem,tipo nome, tipo descricao){ No <tipo> *ant=NULL, *atual,*novo; novo = new No <tipo>(elem,nome,descricao, NULL); if(empty()) inicio=novo; else{ atual=inicio; while(atual!=NULL && atual->info <= elem){ ant=atual; atual=atual->prox; } if(ant==NULL){//inicio novo->prox=inicio; inicio=novo; } else{//meio ou fim ant->prox=novo; novo->prox=atual; } } } template <class tipo> Lista <tipo> :: ~Lista(){ No <tipo> *p; while(inicio!=NULL){ p=inicio; inicio=inicio->prox; delete p; } } int Menu() { int opcao,idEspecialidade; char op='2'; int retorno; string nomeEspecialidade, descricaoEspecialidade; setlocale(LC_ALL, "Portuguese"); cout<<"-----------------------------"<<endl; cout<<"- CLÍNICA MOREHEALTH -"<<endl; cout<<"-----------------------------"<<endl; cout<<"[1]-CADASTRAR ESPECIALIDADE"<<endl; cout<<"[2]-SOLICITAR CONSULTA"<<endl; cout<<"[3]-LISTAR CONSULTAS"<<endl; cout<<"[4]-SAIR"<<endl; cout<<"-------------------------------"<<endl; cout<<"INSIRA A OPÇÃO DESEJADA (1 A 4): "; cin>> opcao; cin.clear(); cin.ignore(numeric_limits<streamsize>::max(), '\n'); do { switch(opcao) { case 1: { cout<<"Informe id Especialidade :"; cin>>idEspecialidade; cin.ignore(); cout<<"Informe Nome Especialidade: "; getline(cin,nomeEspecialidade); cout<<"Informe descrição Especialidade: "; getline(cin,descricaoEspecialidade); system("pause"); system("cls"); return Menu(); break; } case 2: { system("pause"); system("cls"); return Menu(); return Menu(); break; } case 3: { system("cls"); cout<<"nenhuma lista "<<"\n"; system("pause"); system("cls"); return Menu(); break; } case 4: { system("cls"); cout<<endl; cout<<":::::::::::::::::::::"<<endl; cout<<"*SISTEMA FINALIZADO*"<<endl; cout<<":::::::::::::::::::::"<<endl; exit(0); break; } } cout<<endl; cout<<"****opção inválida,tente novamente!***"<<endl; cout<<endl; cout<<"INSIRA A OPÇÃO DESEJADA (1 A 4): "; cin>> opcao; cin.clear(); cin.ignore(numeric_limits<streamsize>::max(), '\n'); } while(opcao>0 || opcao<5); system("cls"); } //programa principal int main() { Menu( ); Lista <string> L; return 0; }
-
Não estou conseguindo entender esse programa em c , tem como me ajudar? Escreva um programa que armazene 40 elementos reais em um vetor. Mostrar o vetor e informar quantos números existem em cada faixa: Faixa 1 -> 1 - 100 Faixa 2 -> 200 - 450 Faixa 3 -> 501 - 745.5 Faixa 4 -> 800.5 - 920.9
-
Ao executar o meu .cpp ele tem feito tudo corretamente com todos os metodos, menos o radix, ele tem q calcular os tempos e fazer a media depois, ele não tem feito isso com o radix e não sei oq fazer, preciso muito de ajuda e uma solução, ja tentei de tudo, mas não sou bom em C++. link para ver funcionando: https://www.onlinegdb.com/fork/rkRmSLk24 #include <stdio.h> #include <time.h> #include <stdlib.h> #include <limits.h> #include <string.h> #include <chrono> #include <unistd.h> #include <iostream> using namespace std; int *v, *v1, *v2, *v3, *v4, *v5, *v6, *v7; //------------------------------------------------------------------------------------- void bubbleSort(int v[], int n) { bool trocou; int k = n; do { trocou = false; k--; for (int i = 0; i < k; i++) if (v[i+1] < v[i]) { int aux = v[i+1]; v[i+1] = v[i]; v[i] = aux; trocou = true; } } while (trocou); } //------------------------------------------------------------------------------------- void insertionSort(int v[], int n) { int i, j, chave; for (j = 1; j < n; j++) { chave = v[j]; i = j - 1; while (i >= 0 && v[i] > chave) { v[i+1] = v[i]; i--; } v[i+1] = chave; } } //------------------------------------------------------------------------------------- void selectionSort(int v[], int n) { int i, j, min; for(i = 0; i < n-1; i++) { min = i; for (j = i + 1; j < n; j++) if (v[j] < v[min]) min = j; if (min != i) { int temp = v[min]; v[min] = v[i]; v[i] = temp; } } } //------------------------------------------------------------------------------------- void shellSort(int v[], int n) { int i , j , valor; int h = 1; while(h < n) { h = 3*h+1; } while (h > 1) { h /= 3; for(i = h; i < n; i++) { valor = v[i]; j = i - h; while (j >= 0 && valor < v[j]) { v [j + h] = v[j]; j -= h; } v [j + h] = valor; } } } //------------------------------------------------------------------------------------- void quickSort1(int v[], int ini, int fim) { int i = ini; int j = fim; int pivo = v[(ini+ fim)/2]; // Pivo e o elemento central do { while (v[i] < pivo && i < fim) i++; while (pivo < v[j] && j > ini) j--; if (i <= j) { int aux = v[i]; v[i] = v[j]; v[j] = aux; i++; j--; } } while (i <= j); if (ini < j) quickSort1(v,ini,j); if (i < fim) quickSort1(v,i,fim); } void quickSort(int v[], int tam) { quickSort1(v, 0, tam-1); } //------------------------------------------------------------------------------------- void intercala(int v[], int aux[], int ini, int meio, int fim) { int i = ini, j = fim, k; for (k = ini; k <= meio; k++) aux[k] = v[k]; for (k = meio+1; k <= fim; k++) aux[fim + meio + 1 - k] = v[k]; for (k = ini; k <= fim; k++) if (aux[i] <= aux[j]) v[k] = aux[i++]; else v[k] = aux[j--]; } void mergeSort1(int v[], int aux[], int ini, int fim) { if (ini < fim) { int meio = (ini + fim) / 2; mergeSort1(v, aux, ini, meio); mergeSort1(v, aux, meio+1, fim); intercala(v, aux, ini, meio, fim); } } void mergeSort(int v[], int n) { int *aux = (int *) malloc(n * sizeof(int)); mergeSort1(v, aux, 0, n-1); free(aux); } //------------------------------------------------------------------------------------- int getMax(int v[], int tam) { int max = v[0]; for (int i = 1; i < tam; i++) if (v[i] > max) max = v[i]; return max; } void countSort(int v[], int tam, int exp) { int output[tam], i, count[10] = {0}; for (i = 0; i < tam; i++) count[(v[i] / exp) % 10]++; for (i = 1; i < 10; i++) count[i] += count[i-1]; for (i = tam - 1; i >= 0; i--) { output[count[(v[i] / exp) % 10] - 1] = v[i]; count[(v[i] / exp) % 10]--; } for (i = 0; i < tam; i++) v[i] = output[i]; } void radixsort(int v[], int tam) { int exp, m; m = getMax(v, tam); for (exp = 1; m/exp > 0; exp *= 10) countSort(v, tam, exp); } //------------------------------------------------------------------------------------- void gerar(int v[], int tam) { srand((unsigned int)time(NULL)); for (int i = 0; i < tam; i++) v[i] = rand() % 100000001; } //------------------------------------------------------------------------------------- void copiar(int origem[], int destino[], int n) { for (int i = 0; i < n; i++) destino[i] = origem[i]; } //------------------------------------------------------------------------------------- bool verifica(int v[], int n) { for (int i = 0; i < n-1; i++) if (v[i] > v[i+1]) return false; return true; } //------------------------------------------------------------------------------------- void inverte(int v[], int n) { for (int i = 0, j = n-1; i < n/2; i++,j--) v[i] = v[j]; } //------------------------------------------------------------------------------------- int main(void) { chrono::steady_clock::time_point start, end; long double cpu_time; int tam, iter; char metodos[100]; long double tempo[] = { 0, 0, 0, 0, 0, 0 }; tam = 0; printf("Quantos numeros? "); scanf("%d", &tam); getchar(); if (tam <= 0) return 0; printf("Selecione os metodos:\n 1-Bubble sort\n 2-Selection sort\n 3-Insertion sort\n 4-Shell sort\n 5-Quicksort\n 6-Mergesort\n 7-Radix sort\nMetodos: "); gets(metodos); printf("Quantas execucoes (1, 2, 3, ...)? "); scanf("%d", &iter); getchar(); if (iter <= 0) return 0; v = (int *) malloc(tam * sizeof(int)); v1 = (int *) malloc(tam * sizeof(int)); v2 = (int *) malloc(tam * sizeof(int)); v3 = (int *) malloc(tam * sizeof(int)); v4 = (int *) malloc(tam * sizeof(int)); v5 = (int *) malloc(tam * sizeof(int)); v6 = (int *) malloc(tam * sizeof(int)); v7 = (int *) malloc(tam * sizeof(int)); for (int i = 1; i <= iter; i++) { printf("------------------------------------------------\nExecucao %d:\n------------------------------------------------\n", i); printf("Gerando %d elementos...\n", tam); gerar(v, tam); copiar(v, v1, tam); copiar(v, v2, tam); copiar(v, v3, tam); copiar(v, v4, tam); copiar(v, v5, tam); copiar(v, v6, tam); copiar(v, v7, tam); // bubble if (strchr(metodos, '1') != NULL) { printf("Bubble sort...\n"); start = chrono::steady_clock::now(); bubbleSort(v1, tam); end = chrono::steady_clock::now(); cpu_time = chrono::duration_cast<chrono::nanoseconds>(end - start).count() / (long double) 1000000.0; printf("%s. Tempo: %lf ms (%lf s)\n", verifica(v1, tam) ? "OK":"ERRO", cpu_time, cpu_time/1000); tempo[0] += cpu_time; } // selection if (strchr(metodos, '2') != NULL) { printf("Selection sort...\n"); start = chrono::steady_clock::now(); selectionSort(v3, tam); end = chrono::steady_clock::now(); cpu_time = chrono::duration_cast<chrono::nanoseconds>(end - start).count() / (long double) 1000000.0; printf("%s. Tempo: %lf ms (%lf s)\n", verifica(v3, tam) ? "OK":"ERRO", cpu_time, cpu_time/1000); tempo[1] += cpu_time; } // insertion if (strchr(metodos, '3') != NULL) { printf("Insertion sort...\n"); start = chrono::steady_clock::now(); insertionSort(v2, tam); end = chrono::steady_clock::now(); cpu_time = chrono::duration_cast<chrono::nanoseconds>(end - start).count() / (long double) 1000000.0; printf("%s. Tempo: %lf ms (%lf s)\n", verifica(v2, tam) ? "OK":"ERRO", cpu_time, cpu_time/1000); tempo[2] += cpu_time; } // shell if (strchr(metodos, '4') != NULL) { printf("Shell sort...\n"); start = chrono::steady_clock::now(); shellSort(v4, tam); end = chrono::steady_clock::now(); cpu_time = chrono::duration_cast<chrono::nanoseconds>(end - start).count() / (long double) 1000000.0; printf("%s. Tempo: %lf ms (%lf s)\n", verifica(v4, tam) ? "OK":"ERRO", cpu_time, cpu_time/1000); tempo[3] += cpu_time; } // quick if (strchr(metodos, '5') != NULL) { printf("Quick sort...\n"); start = chrono::steady_clock::now(); quickSort(v5, tam); end = chrono::steady_clock::now(); cpu_time = chrono::duration_cast<chrono::nanoseconds>(end - start).count() / (long double) 1000000.0; printf("%s. Tempo: %lf ms (%lf s)\n", verifica(v5, tam) ? "OK":"ERRO", cpu_time, cpu_time/1000); tempo[4] += cpu_time; } // merge if (strchr(metodos, '6') != NULL) { printf("Merge sort...\n"); start = chrono::steady_clock::now(); mergeSort(v6, tam); end = chrono::steady_clock::now(); cpu_time = chrono::duration_cast<chrono::nanoseconds>(end - start).count() / (long double) 1000000.0; printf("%s. Tempo: %lf ms (%lf s)\n", verifica(v6, tam) ? "OK":"ERRO", cpu_time, cpu_time/1000); tempo[5] += cpu_time; } //radixsort if (strchr(metodos, '7') != NULL) { printf("Radix sort...\n"); start = chrono::steady_clock::now(); radixsort(v7, tam); end = chrono::steady_clock::now(); cpu_time = chrono::duration_cast<chrono::nanoseconds>(end - start).count() / (long double) 1000000.0; printf("%s. Tempo: %lf ms (%lf s)\n", verifica(v7, tam) ? "OK":"ERRO", cpu_time, cpu_time/1000); tempo[6] += cpu_time; } } if (iter > 1) { printf("-------------------------------------------\nTempos medios:\n"); if (strchr(metodos, '1') != NULL) printf("Bubble sort: %lf ms (%lf s)\n", tempo[0]/iter, tempo[0]/(iter*1000)); if (strchr(metodos, '2') != NULL) printf("selection sort: %lf ms (%lf s)\n", tempo[1]/iter, tempo[1]/(iter*1000)); if (strchr(metodos, '3') != NULL) printf("Insertion sort: %lf ms (%lf s)\n", tempo[2]/iter, tempo[2]/(iter*1000)); if (strchr(metodos, '4') != NULL) printf("Shell sort: %lf ms (%lf s)\n", tempo[3]/iter, tempo[3]/(iter*1000)); if (strchr(metodos, '5') != NULL) printf("Quick sort: %lf ms (%lf s)\n", tempo[4]/iter, tempo[4]/(iter*1000)); if (strchr(metodos, '6') != NULL) printf("Merge sort: %lf ms (%lf s)\n", tempo[5]/iter, tempo[5]/(iter*1000)); if (strchr(metodos, '7') != NULL) printf("Radix sort: %lf ms (%lf s)\n", tempo[6]/iter, tempo[6]/(iter*1000)); } free(v); free(v1); free(v2); free(v3); free(v4); free(v5); free(v6); free(v7); }
-
Me ajudem a fazer esse ultimo pedaço do meu programa
FTgamexx@gmail.com postou um tópico no fórum C/C++
Aprendi a mexer no C++ a um mês porem não sei muto bem como faz algumas coisas, preciso acrescentar isso no meio dele int ckdig (int n, int* p, int* i) { int d = 0; if(n < 0) n = -n; *p = *i = 0; while(n) { if((n % 2) == 0) (*p)++; else (*i)++; n /= 10; d++; } return d; } int main (int argc, char** argv) { int n, p, i, d; puts("Digite um número:"); scanf("%d", &n); d = ckdig(n, &p, &i); printf("Dentre os %d dígitos, há %d pares e %d ímpares.\n", d, p, i); return 0; } porem tem que usar os números que eu coloco dentro do vetor deixei um em //Pares e impares para colocar o comando //Bibliotecas #include <stdio.h> #include <locale.h> //cria uma constante #define N 6 int main() { //Variaveis int vet[N], i, maior, menor,soma=0,*p,*m,d; //preenche o vetor printf("Digite N :\n"); for (i = 0; i < N; i++) { scanf("%i", &vet); } //encontra o maior valor maior = vet[0]; for (i = 1; i < N; i++) { if (vet > maior) { maior = vet; } } //encontra o menor valor menor = vet[0]; for (i = 1; i < N; i++) { if (vet < menor) { menor = vet; } } //calculo da soma for(i=0; i<N; i++){ soma=soma+vet; } //Acento (setlocale(LC_ALL,"")); //Impares e Pares //Comando na tela printf("\nA soma é: %i ", soma); printf("\nMaior valor: %i ", maior); printf("\nMenor valor: %i ", menor); return 0; } -
Linguagem c (ajuda com armazenamento)
victormota1695 postou uma questão Perguntas e respostas rápidas
Estou desenvolvendo um programa para trabalho de faculdade onde preciso usar estrutura de repetição para perguntar ao usuario um nome/itens armazena-los e quando o usuario nao quiser mais digitar os nomes ao sair do loop mostra todos os nomes que ele digitou. nao estou conseguindo preciso de ajuda. dese ja agradeço. meu codigo ate o momento e: #include <stdio.h> #include<stdlib.h> int main (){ char lista,lista2; int menu1,menu2; printf("***BEM-VINDO AO LISTSUPER***\n\n"); // ****Aqui o 1º menu de seleção****// printf("Escolha uma opção\n"); printf("1-inserir novos itens\n2-inserir quantidade\n3-calcular valor\n4-mostrar itens\n\n"); scanf("%i",&menu1); // ***Aqui e o loop para digitar os itens desejados****// if (menu1==1){ while(1) { printf("insira os itens\n"); scanf("%s",&lista); printf("deseja inserir novos itens? [1-sim/2-nao]\n"); scanf("%i",&menu2); if (menu2==2){ break;} } } // ***Caso ele não selecione a opção para inserir novos itens aparecera esta mensagem***// else { printf("Não ha itens inseridos\nEscolha a opção ( inserir novos itens )"); } //***Apos acabar de digitar os itens mostrar a lista dos itens digitados***// return 0; } -
Alguem pode me ajudar com esse algoritmo,fiz esse porem quando digito 10000 ele cai nos dois ultimos ifs.. Sabendo que o reajuste dos imposto de renda será de 7% para renda de até R$ 5.000,00, de 8% para rendas até R$ 8.000,00 e de 10% para rendas superiores a R$ 8.000,00, dado uma renda qualquer defina qual é o imposto a ser aplicado #include <bits/stdc++.h> using namespace std; int main() { float imposto,salario,deduzir,deduzir1,deduzir2; printf("\nDigite seu salario"); scanf("%f",&salario); if(salario==5000.00){ printf("Seu imposto é de 350R$"); } if(salario==8000.00);{ printf("Seu imposto é de 640R$"); } if(salario>8000.00){ printf(" O seu imposto é de 800 R$"); } return 0; }
-
Tava fazendo um exercício e ele pede pro programa exibir os 20 primeiros números primos depois do 100. Por enquanto eu fiz ele assim mas não sei onde colocar o num++ pra ir aumentando o valor do numero a ser testado. Ja tentei colocar em varios lugares do codigo e nao deu certo em nenhum deles e tb nao consigo achar oq tem de errado
-
Faça um algoritmo para automatizar o registro de Comanda de Lanchonete. É necessário elaborar o algoritmo representando o contexto mais real do dia a dia do registro de comanda. OBS: Tem que ser considerado a comanda abaixo.
-
- c++
- lanchonete
-
(e mais 1 )
Tags:
-
Olá, estou começando a aprender a linguagem c++ e eu gostaria de saber alguns exemplos de jogos feitos com puro c++ sem engine nem nd. Pra eu ter uma noção de quanto um desenvolvedor vai sem usar uma engine =) obrigado.
-
programação Quero fazer jogos e queria recomendações
Cloudinbr postou um tópico no fórum Desenvolvimento de Games
desde pequeno sempre tive esse desejo ardente de poder contar uma historia através de um jogo, com um ótimo game play, historia envolvente e dinâmica etc... então assim que completei meus 16 anos, resolvi começar a pesquisar mais sobre a criação de jogos, e a uns meses atras resolvi começar a estudar c++. eu tambei baixei o Godot, que é uma engine boa para criação de jogos e esta ganhando uma certa fama ultimamente, e tambem tem suporte a c++. bem, ainda não estou programando nenhum game porque estou na metade dos meus estudos sobre c++ ainda, mais queria algumas dicas: *é necessário estudar outras linguagens da programação para programar jogos? se sim quais vocês recomendam? * Existe algum livro em pdf que poderia me ajudar mais a estudar c++? *Ultimamente fiquei com duvida se realmente conseguiria fazer um jogo bom em c++, então poderiam me dar exemplos de jogos legais feitos em c++? enfim, se quiserem me der outras dica ficarei feliz, sou relativamente um iniciante quando se trata de desenvolver jogos(ja tentei fazer uma coisa ou 2 no rpgmaker vxace mas como não sabia nada de programação e só usava os recursos do programa, saia tudo cagado ksksksks) então adoraria saber de dicas dos mais experientes no assunto :v -
a soma de todos os números pares não primos que antecedem N
CiCLON3 postou uma questão Perguntas e respostas rápidas
Preciso criar um programa que faça 3 execuções: A soma de todos os números pares não primos que antecedem N; A soma de todos os números ímpares não primos que antecedem N; A soma de todos os números primos que antecedem N. Mas não sei como, sei imprimir os primos, pares e impares ate n, mas fazer a soma não. -
Se alguém puder ajudar ficaria agradecida :) Crie um programa em C que calcule quantas notas de 50, 10 e 1 são necessárias para se pagar uma conta cujo valor é fornecido pelo usuário.
-
Se alguém puder ajudar ficaria agradecida :) Crie um programa em C que calcule quantas notas de 50, 10 e 1 são necessárias para se pagar uma conta cujo valor é fornecido pelo usuário.
-
Quero programar em C++, mas por onde começar
toca19 postou uma questão Perguntas e respostas rápidas
Pessoal, já estou um bom tempo programando em C. Agora quero programar em C++ orientado a objetos. Então, por favor. Me ajudem por onde devo começar?