/*
* File: main.cpp
* Author: joao
*
* 1. Faça um programa que realize o cadastro de contas bancárias com as seguintes informações:
* a. Código do cliente;
* b. Nome do cliente;
* c. Número da conta;
* d. Saldo bancário.
* O banco permitirá o cadastramento de apenas quinze contas e não poderá haver mais que uma conta com o mesmo número.
* Menu de opções:
* I. Cadastro de contas;
* II. Exibir na tela a conta cadastrada de acordo com o código do cliente informado;
* III. Excluir a conta com menor saldo (supondo que não existência de saldos iguais);
* IV. Sair.
estrutura-de-dados • FPF
* Created on 14 de Agosto de 2017, 13:26
*/
#include <cstdlib>
#include<stdio.h>
#define MAX 15
using namespace std;
struct conta {
int codigo;
int nConta;
char nome[20];
float saldo;
char status;
};
typedef struct conta cc;
int menorSaldo(cc contas[], int tl) {
float menor = 9999;
int cont = 0, pos = 0;
while (cont < tl) {
if (contas[cont].saldo < menor) {
menor = contas[cont].saldo;
menor = cont;
}
cont++;
}
}
void exibirContas(cc contas[MAX], int tl) {
printf("CODIGO \t NOME \t C. C. \t SALDO \n");
while (tl--) {
if (contas[tl].status == 1) {
printf("<%d> \t [%s] \t [%d] \t R$[%.2f] \n", contas[tl].codigo, contas[tl].nome, contas[tl].nConta, contas[tl].saldo);
}
}
}
void exibirConta(cc contas[MAX], int tl, int chave) {
int cont = 0;
while (cont < tl && contas[cont].nConta != chave) {
cont++;
}
printf("CODIGO \t NOME \t C. C. \t SALDO \n");
if (contas[cont].status == 1 && cont < MAX) {
printf("<%d> \t [%s] \t [%d] \t R$[%.2f] \n", contas[tl].codigo, contas[tl].nome, contas[tl].nConta, contas[tl].saldo);
}
}
void excluirMenor(cc contas[MAX], int tl) {
int pos = menorSaldo(contas, tl);
printf("CODIGO \t NOME \t C. C. \t SALDO \n");
printf("<%d> \t [%s] \t [%d] \t R$[%.2f] \n", contas[pos].codigo, contas[pos].nome, contas[pos].nConta, contas[pos].saldo);
contas[pos].status = 0;
}
int main(int argc, char** argv) {
int cont = 0, chave;
cc contas[MAX];
printf("Entre com os dados:\n");
while (cont < 3) {
fflush(stdin);
printf("Codigo:\n");
scanf("%d", &contas[cont].codigo);
printf("Nome:\n");
scanf("%s", &contas[cont].nome);
printf("Conta Corrente:\n");
scanf("%d", &contas[cont].nConta);
printf("Saldo:\n");
scanf("%f", &contas[cont].saldo);
contas[cont].status = 1;
cont++;
}
exibirContas(contas, cont);
excluirMenor(contas, cont);
printf("Conta Corrente:\n");
scanf("%d", &chave);
exibirConta(conta,cont,chave);
printf("\n \n ");
}
Para responder essa pergunta devemos colocar em prática nosso conhecimento sobre Algoritmo e Estrutura de Dados.
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define tam 15
main(){
struct banco{
int num_conta;
char cliente[50];
float saldo;
};
struct banco contas[15];
int i,j,menu,ver_conta,contcliente=0,cont=0,numero;
char vnome[50];
while (menu!=4){
printf(“\t\t* CONTAS BANCARIAS *\n”);
printf(“\t\t* Menu de Opcoes *\n”);
printf(“\t\t* [1] Cadastrar as Contas *\n”);
printf(“\t\t* [2] Visualizar todas as contas *\n”);
printf(“\t\t* [3] Visualizar conta *\n”);
printf(“\t\t* [4] Sair *\n”);
menu=0;
printf(“\n\n\t\t MENU: “);
scanf(“\t\t%d”,&menu);
switch (menu){
case 1:
system(“cls”);
printf(“\n\n”);
do{
printf(“\t Digite o Numero da Conta: “);
scanf(“\t%d”,&ver_conta);
for (i=0;i<tam;i++){
if (ver_conta!=contas[i].num_conta){
contcliente++;
}
}
if (contcliente==15){
contas[cont].num_conta=ver_conta;
printf(“\t Digite o Nome do Cliente:");
scanf(“\t%s,&contas[cont].cliente);
printf(“\t Digite o saldo: “);
scanf(“\t%f",&contas[cont].saldo);
printf(“\n”);
contcliente=0;
}
else{
cont=cont-1;
printf(“Conta existe \n”);
contcliente=0;
}
cont++;
}
while(cont<15);
system(“cls”);
break;
case 2:
system(“cls”);
printf(“\n\n”);
printf(“\tDigite o nome do cliente:");
scanf(“\t%s”’,&vnome);
for (i=0;i<tam;i++){
numero=(strcmp(vnome,contas[i].cliente));
if (numero==0)
printf(“\n \n \tNumero Conta: %d - Nome: %s - Saldo:
%f\n”,contas[i].num_conta,contas[i].cliente,contas[i].saldo);
}
system(“pause”);
system(“cls”);
break;
case 3:
system(“cls”);
printf(“\n\n”);
printf(“\t Digite o Numero da Conta: “);
scanf(“\t%d”,&ver_conta);
for (i=0;i<tam;i++){
if (ver_conta==contas[i].num_conta){
printf(“\n \n \tNumero Conta: %d - Nome: %s - Saldo:
%f\n”,contas[i].num_conta,contas[i].cliente,contas[i].saldo);
}
}
system(“pause”);
system(“cls”);
break;
case 4:
break;
default:
printf(“OPCAO INVALIDA”);
system(“cls”);
}
}
getch();
}
}
Portanto, o código acima atende todas os requisitos solicitados, tanto do menu, quanto os demais dados solicitados e o limite de 15 pessoas.
Para responder essa pergunta devemos colocar em prática nosso conhecimento sobre Algoritmo e Estrutura de Dados.
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define tam 15
main(){
struct banco{
int num_conta;
char cliente[50];
float saldo;
};
struct banco contas[15];
int i,j,menu,ver_conta,contcliente=0,cont=0,numero;
char vnome[50];
while (menu!=4){
printf(“\t\t* CONTAS BANCARIAS *\n”);
printf(“\t\t* Menu de Opcoes *\n”);
printf(“\t\t* [1] Cadastrar as Contas *\n”);
printf(“\t\t* [2] Visualizar todas as contas *\n”);
printf(“\t\t* [3] Visualizar conta *\n”);
printf(“\t\t* [4] Sair *\n”);
menu=0;
printf(“\n\n\t\t MENU: “);
scanf(“\t\t%d”,&menu);
switch (menu){
case 1:
system(“cls”);
printf(“\n\n”);
do{
printf(“\t Digite o Numero da Conta: “);
scanf(“\t%d”,&ver_conta);
for (i=0;i<tam;i++){
if (ver_conta!=contas[i].num_conta){
contcliente++;
}
}
if (contcliente==15){
contas[cont].num_conta=ver_conta;
printf(“\t Digite o Nome do Cliente:");
scanf(“\t%s,&contas[cont].cliente);
printf(“\t Digite o saldo: “);
scanf(“\t%f",&contas[cont].saldo);
printf(“\n”);
contcliente=0;
}
else{
cont=cont-1;
printf(“Conta existe \n”);
contcliente=0;
}
cont++;
}
while(cont<15);
system(“cls”);
break;
case 2:
system(“cls”);
printf(“\n\n”);
printf(“\tDigite o nome do cliente:");
scanf(“\t%s”’,&vnome);
for (i=0;i<tam;i++){
numero=(strcmp(vnome,contas[i].cliente));
if (numero==0)
printf(“\n \n \tNumero Conta: %d - Nome: %s - Saldo:
%f\n”,contas[i].num_conta,contas[i].cliente,contas[i].saldo);
}
system(“pause”);
system(“cls”);
break;
case 3:
system(“cls”);
printf(“\n\n”);
printf(“\t Digite o Numero da Conta: “);
scanf(“\t%d”,&ver_conta);
for (i=0;i<tam;i++){
if (ver_conta==contas[i].num_conta){
printf(“\n \n \tNumero Conta: %d - Nome: %s - Saldo:
%f\n”,contas[i].num_conta,contas[i].cliente,contas[i].saldo);
}
}
system(“pause”);
system(“cls”);
break;
case 4:
break;
default:
printf(“OPCAO INVALIDA”);
system(“cls”);
}
}
getch();
}
}
Portanto, o código acima atende todas os requisitos solicitados, tanto do menu, quanto os demais dados solicitados e o limite de 15 pessoas.
Para escrever sua resposta aqui, entre ou crie uma conta.
Compartilhar