Ejemplo n.º 1
0
main()
{
 int N, i=-1,s_ptr=-1,o_ptr=-1;
 char expr[403];
 char out[403]={0};
 char stack[300]={0};
 scanf("%d%*c",&N);
 while(N)
 {
 o_ptr=s_ptr=-1;
 scanf("%s", expr);
 for(i=0;expr[i]!='\0'; i++)
 {
 
 if(expr[i]=='(')
 {
 s_ptr++;
 stack[s_ptr]='(';
 }
 else if(expr[i]==')')
 {
 while(stack[s_ptr]!='(')
 {
 o_ptr++;
 out[o_ptr]=stack[s_ptr];
 s_ptr--;
 }
 s_ptr--;
 }
 else if(expr[i]=='+' || expr[i]=='-' || expr[i]=='/' || expr[i]=='*' || expr[i]=='^')
 {
 while(getPre(stack[s_ptr])>=getPre(expr[i]))
 {
 o_ptr++;
 out[o_ptr]=stack[s_ptr];
 s_ptr--;
 }
 s_ptr++;
 stack[s_ptr]=expr[i];
 }
 else
 {
 o_ptr++;
 out[o_ptr]=expr[i];
 }
 }
 out[o_ptr+1]='\0';
 printf("%s\n",out);
 N--;
 }
 return 0;
}
Ejemplo n.º 2
0
void MainWindow::work()
{
    QString fileName=pathE->text();
    for(int i=0;i<fileName.length();i++)
        if(fileName[i]=='\\')
            fileName[i]='/';
    int picNum=numE->text().toInt();
    wd=new ImageWidget(NULL,fileName,picNum);
    matchFBtn->setVisible(wd->tp.linev.size()==Hei);
    findMBtn->setVisible(true);
    findSBtn->setVisible(true);
    preBtn->setVisible(true);
    addBtn->setVisible(true);
    delBtn->setVisible(true);
    redoBtn->setVisible(true);
    nextBtn->setVisible(true);
    zinBtn->setVisible(true);
    zoutBtn->setVisible(true);
//    listSBtn->setVisible(true);
    connect(listSBtn,SIGNAL(clicked()),this,SLOT(listSameLine()));
    connect(findMBtn,SIGNAL(clicked()),this,SLOT(findMatch()));
    connect(findSBtn,SIGNAL(clicked()),this,SLOT(findSameLine()));
    connect(preBtn,SIGNAL(clicked()),this,SLOT(getPre()));
    connect(nextBtn,SIGNAL(clicked()),this,SLOT(getNext()));
    connect(addBtn,SIGNAL(clicked()),this,SLOT(addEdge()));
    connect(delBtn,SIGNAL(clicked()),this,SLOT(delEdge()));
    connect(redoBtn,SIGNAL(clicked()),this,SLOT(redo()));
    connect(dispBtn,SIGNAL(clicked()),this,SLOT(disp()));
    connect(matchFBtn,SIGNAL(clicked()),this,SLOT(matchFinall()));
    connect(zinBtn,SIGNAL(clicked()),this,SLOT(zoomin()));
    connect(zoutBtn,SIGNAL(clicked()),this,SLOT(zoomout()));
    updateLayout();
    wd->show();

}
Ejemplo n.º 3
0
    void Generator::getCpp(std::ostream& code, const std::string& filename) const
    {
      getIntro(code, filename);

      getHeaderIncludes(code);
      getCppIncludes(code);

      if (multiImages.empty() && !isRawMode())
        code << "log_define(\"" << maincomp.getLogCategory() << "\")\n\n";

      getPre(code);

      code << "\n" 
              "namespace\n"
              "{\n";

      getClassDeclaration(code);

      getCppBody(code);

      code << "} // namespace\n";
    }