Enviado em 20/10/2025 - 05:56h
alguém poderia por favor converte esse algoritmo c++ para c ? É extremamente importante e eu não estou conseguindo fazer a conversao.#include <iostream>
#include <string>
struct Data
{
int dia;
int mes;
int ano;
};
struct Horario
{
int hora;
int minuto;
};
struct Paciente
{
int codigo;
char nome[30];
char especialidade[30]; //alergia, etc
char situacao; //U-urgente, C-inspira cuidados, M-Medicado
char internacao; // S-S, N-não
char convenio; // S-SIM, N-não
Data data;
Horario horario;
float custoHospitalar = 0;
void showData()
{
std::cout << '\n';
std::cout << "Registro do paciente - CODIGO: " << codigo << std::endl;
std::cout << "Nome: " << nome << std::endl;
std::cout << "Especialidade: " << especialidade << std::endl;
std::cout << "Internação: " << internacao << std::endl;
std::cout << "Convenio: " << convenio << std::endl;
std::cout << "Data: " << data.dia << "/" << data.mes << "/" << data.ano << std::endl;
std::cout << "Horario: " << horario.hora << ":" << horario.minuto << std::endl;
std::cout << "Custo hospitalar atual: " << custoHospitalar << std::endl;
std::cout << '\n';
}
void receiveData()
{
std::cout << "Digite o codigo do paciente:";
std::cin >> codigo;
std::cout << "Nome:";
std::cin >> nome;
std::cout << "Digite a especialidade (Alergia, etc): ";
std::cin >> especialidade;
std::cout << "Situacao (U/C/M): ";
std::cin >> situacao;
std::cout << "Internacao? (S/N): ";
std::cin >> internacao;
std::cout << "Convenio? (S/N): ";
std::cin >> convenio;
//receive all about Data
std::cout << "Data dia: ";
std::cin >> data.dia;
std::cout << "Data mes: ";
std::cin >> data.mes;
std::cout << "Data ano: ";
std::cin >> data.ano;
//all about Horario
std::cout << "Hora: ";
std::cin >> horario.hora;
std::cout << "Minutos: ";
std::cin >> horario.minuto;
}
void setCustoHospitalar(float valor)
{
custoHospitalar = valor;
}
};
int main()
{
const int MAX_PACIENTES = 30;
Paciente pacientes[MAX_PACIENTES];
char op;
int atualPaciente = 0;
do
{
std::cout << "\n-- SISTEMA DE REGISTRO DE PACIENTES --" << std::endl;
std::cout << "1) Registrar paciente" << std::endl;
std::cout << "2) Relatorio de pacientes" << std::endl;
std::cout << "3) Sair.\n";
std::cin >> op;
switch (op)
{
case '1':
do
{
pacientes[atualPaciente].receiveData();
std::cout << "Deseja registrar outro paciente? (S/N):";
++atualPaciente;
std::cin >> op;
} while (op != 'N' && atualPaciente < MAX_PACIENTES);
break;
case '2':
for (int i = 0; i < atualPaciente; i++)
pacientes[i].showData();
break;
default:
break;
}
} while (op != '3');
return 0;
}
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
PIP3 - erro ao instalar módulo do mariadb para o Python (2)
converter algoritmo C++ em C? (0)
Falha com leitor de digitais no Ubuntu: sugestões? (0)