I have made cancer prediction based on symptoms using decision trees but i am not able to run my code
Please Help ME!! Thanks in Advance!!!
Please Help ME!! Thanks in Advance!!!
Code:
#include<iostream>
using namespace std;
#include<conio.h>
#include<string.h>
struct dectree
{
char symptom[50];
struct disease
{
char disea[50];
}dis[20];
}arr[40];
void datainsert()
{
strcpy(arr[0].symptom,"Uneasiness");
strcpy(arr[0].dis[0].disea,"Pancreas");
strcpy(arr[0].dis[1].disea,"Stomach");
strcpy(arr[0].dis[2].disea,"Esophagus");
strcpy(arr[0].dis[3].disea,"Kidney");
strcpy(arr[0].dis[4].disea,"Lung");
strcpy(arr[0].dis[5].disea,"Bone");
strcpy(arr[0].dis[6].disea,"Brain");
strcpy(arr[0].dis[7].disea,"Leukmia");
strcpy(arr[0].dis[8].disea,"Colon");
strcpy(arr[1].symptom,"Unexplained Weight Loss");
strcpy(arr[1].dis[0].disea,"Pancreas");
strcpy(arr[1].dis[1].disea,"Stomach");
strcpy(arr[1].dis[2].disea,"Esophagus");
strcpy(arr[1].dis[3].disea,"Kidney");
strcpy(arr[1].dis[4].disea,"Lung");
strcpy(arr[2].symptom,"Fatigue");
strcpy(arr[2].dis[0].disea,"Bone");
strcpy(arr[2].dis[1].disea,"Brain");
strcpy(arr[2].dis[2].disea,"Leukmia");
strcpy(arr[2].dis[3].disea,"Colon");
strcpy(arr[3].symptom,"Stomach Ache");
strcpy(arr[3].dis[0].disea,"Pancreas");
strcpy(arr[3].dis[1].disea,"Stomach");
strcpy(arr[3].dis[2].disea,"Esophagus");
strcpy(arr[3].dis[3].disea,"Kidney");
strcpy(arr[4].symptom,"Chronic Cough");
strcpy(arr[4].dis[0].disea,"Lung");
strcpy(arr[5].symptom,"Changing Bowel Habits");
strcpy(arr[5].dis[0].disea,"Colon");
strcpy(arr[6].symptom,"Pain");
strcpy(arr[6].dis[0].disea,"Bone");
strcpy(arr[6].dis[1].disea,"Leukmia");
strcpy(arr[6].dis[2].disea,"Brain");
strcpy(arr[7].symptom,"Hypertension");
strcpy(arr[7].dis[0].disea,"Pancreas");
strcpy(arr[7].dis[1].disea,"Kidney");
strcpy(arr[8].symptom,"Swallowing Difficulty");
strcpy(arr[8].dis[0].disea,"Stomach");
strcpy(arr[8].dis[1].disea,"Esophagus");
strcpy(arr[13].symptom,"Head Ache");
strcpy(arr[13].dis[0].disea,"Brain");
strcpy(arr[14].symptom,"Body Ache");
strcpy(arr[14].dis[0].disea,"Bone");
strcpy(arr[14].dis[1].disea,"Leukmia");
strcpy(arr[15].symptom,"Change in urine");
strcpy(arr[15].dis[0].disea,"Kidney");
strcpy(arr[17].symptom,"Heartburn");
strcpy(arr[17].dis[0].disea,"Esophagus");
strcpy(arr[29].symptom,"Physical Intolerance");
strcpy(arr[29].dis[0].disea,"Leukmia");
strcpy(arr[30].symptom,"Bone swelling");
strcpy(arr[30].dis[0].disea,"Bone");
}
void result(int n)
{
cout<<"Based on the following symptom you have chances of following CANCERS : \n";
for(int i=0;i<9;i++)
{
cout<<arr[n].dis[i].disea<<"\t";
}
cout<<endl;
}
void search()
{
int i=0;
int count=1;
int root=i;
int lchild;
int rchild;
char syn[40];
int queue[20];
int k=1;
lchild=2*root+1;
rchild=2*root+2;
while(arr[lchild].symptom!= NULL && arr[rchild].symptom!= NULL)
{
cout<<"Enter the symptom "<<"\t";
cin.getline(syn,40);
queue[count]=lchild;
count++;
queue[count]=rchild;
count++;
if(strcmp(arr[root].symptom,syn)==0)
{
root=queue[k];
lchild=2*root+1;
rchild=2*root+2;
k++;
}
else if( queue[k]!=NULL)
{
root=queue[k];
k++;
if(strcmp(arr[root].symptom,syn)==0)
{
root=queue[k];
lchild=2*root+1;
rchild=2*root+2;
k++;
}
}
else
{
break;
}
}
result(root);
}
main()
{
datainsert();
search();
getch();
}
Comment