alguém poderia por favor converte esse algoritmo c++ para c ? É extremamente importante e eu não estou conseguindo fazer a conversao.
Esse é o algoritmo em c++:
#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;
}