2009年1月6日 星期二

W17 自評

很明顯的 我忘記還有這篇自評要打...
看到大樹MSN的狀態才想起來 但好像為時已晚..
不過既然都想到了就來補一下
給自己7.5好了
我很喜歡李遠坤老師的上課方式
把問題點出來跟同學討論
能跟同學有更多互動(這算類似外國的上課方式嗎?)比較自由
但是可能這裡是台灣
很多學生不習慣這種方式 把方便當成了隨便
導致無法跟"大多數"學生有良好互動
大家都在做自已的事吧
如果認真聽老師說的其實還是狠有收穫的!(雖然曾經也有不專心的時候..)

至於成果的部分還是那台計算機沒什麼變化
以後有機會再把他的功能補完吧..(笑)

老師快點來開微積分啦 我要先佔位子XD
---------------------------------------------------------------
什麼?聽說到6號以前還有救??
那就快來救一下吧
A.C++ Builder 專案成果報告
基本上 我選擇寫一個計算機來當我的專案
程式碼狠常一串...
且都是我自己的想法
可能不是很好理解且滿粗糙的
//---------------------------------------------------------------------------
//1代表opr已存放運算子 也就是Memo3有東西
//2代表opr以存放運算子 並準備儲存num2
//3代表按下等於

AnsiString str="";
int num=0, num2=0;
char opr='0';
char x='0';
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
if(x=='3')
{
Memo1->Clear();
x='0'; //重新了
}
Memo1->Text=Memo1->Text+1;
if(x=='1')
{
x='2'; //代表opr已存有運算子並準備儲存num2
Form1->Memo1->Clear();
Memo1->Text=Memo1->Text+1;
}
if(Memo3->Text=='=')
Memo3->Clear();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn2Click(TObject *Sender)
{
if(x=='3')
{
Memo1->Clear();
x='0'; //重新了
}
Memo1->Text=Memo1->Text+2;
if(x=='1')
{
x='2'; //代表opr已存有運算子並準備儲存num2
Form1->Memo1->Clear();
Memo1->Text=Memo1->Text+2;
}
if(Memo3->Text=='=')
Memo3->Clear();
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn3Click(TObject *Sender)
{
if(x=='3')
{
Memo1->Clear();
x='0'; //重新了
}
Memo1->Text=Memo1->Text+3;
if(x=='1')
{
x='2'; //代表opr已存有運算子並準備儲存num2
Form1->Memo1->Clear();
Memo1->Text=Memo1->Text+3;
}
if(Memo3->Text=='=')
Memo3->Clear();
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn4Click(TObject *Sender)
{
if(x=='3')
{
Memo1->Clear();
x='0'; //重新了
}
Memo1->Text=Memo1->Text+4;
if(x=='1')
{
x='2'; //代表opr已存有運算子並準備儲存num2
Form1->Memo1->Clear();
Memo1->Text=Memo1->Text+4;
}
if(Memo3->Text=='=')
Memo3->Clear();
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn5Click(TObject *Sender)
{
if(x=='3')
{
Memo1->Clear();
x='0'; //重新了
}
Memo1->Text=Memo1->Text+5;
if(x=='1')
{
x='2'; //代表opr已存有運算子並準備儲存num2
Form1->Memo1->Clear();
Memo1->Text=Memo1->Text+5;
}
if(Memo3->Text=='=')
Memo3->Clear();
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn6Click(TObject *Sender)
{
if(x=='3')
{
Memo1->Clear();
x='0'; //重新了
}
Memo1->Text=Memo1->Text+6;
if(x=='1')
{
x='2'; //代表opr已存有運算子並準備儲存num2
Form1->Memo1->Clear();
Memo1->Text=Memo1->Text+6;
}
if(Memo3->Text=='=')
Memo3->Clear();
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn7Click(TObject *Sender)
{
if(x=='3')
{
Memo1->Clear();
x='0'; //重新了
}
Memo1->Text=Memo1->Text+7;
if(x=='1')
{
x='2'; //代表opr已存有運算子並準備儲存num2
Form1->Memo1->Clear();
Memo1->Text=Memo1->Text+7;
}
if(Memo3->Text=='=')
Memo3->Clear();
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn8Click(TObject *Sender)
{
if(x=='3')
{
Memo1->Clear();
x='0'; //重新了
}
Memo1->Text=Memo1->Text+8;
if(x=='1')
{
x='2'; //代表opr已存有運算子並準備儲存num2
Form1->Memo1->Clear();
Memo1->Text=Memo1->Text+8;
}
if(Memo3->Text=='=')
Memo3->Clear();
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn9Click(TObject *Sender)
{
if(x=='3')
{
Memo1->Clear();
x='0'; //重新了
}
Memo1->Text=Memo1->Text+9;
if(x=='1')
{
x='2'; //代表opr已存有運算子並準備儲存num2
Form1->Memo1->Clear();
Memo1->Text=Memo1->Text+9;
}
if(Memo3->Text=='=')
Memo3->Clear();
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn10Click(TObject *Sender)
{
if(x=='3')
{
Memo1->Clear();
x='0'; //重新了
}
Memo1->Text=Memo1->Text+0;
if(x=='1')
{
x='2'; //代表opr已存有運算子並準備儲存num2
Form1->Memo1->Clear();
Memo1->Text=Memo1->Text+0;
}
if(Memo3->Text=='=')
Memo3->Clear();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::BitBtn11Click(TObject *Sender)
{
num=StrToInt(Memo1->Text);
num*=-1;
Memo1->Text=num;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn12Click(TObject *Sender)
{
Memo1->Text=Memo1->Text+'.';
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn13Click(TObject *Sender)
{
opr='+';
Memo3->Text='+';
if(x=='2') //num2已準備儲存
{
num2=StrToInt(Form1->Memo1->Text);
Form1->Memo1->Text=num+num2;
x='1';
}
num=StrToInt(Memo1->Text);

if(x!='2') //num2還沒準備儲存 也就是num1還沒儲存
x='1'; //代表opr已有存放運算子

}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn14Click(TObject *Sender)
{
opr='-';
Memo3->Text='-';
if(x=='2') //num2已準備儲存
{
num2=StrToInt(Form1->Memo1->Text);
Form1->Memo1->Text=num-num2;
x='1';
}
num=StrToInt(Memo1->Text);

if(x!='2') //num2還沒準備儲存 也就是num1還沒儲存
x='1'; //代表opr已有存放運算子
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn15Click(TObject *Sender)
{
opr='*';
Memo3->Text='*';
if(x=='2') //num2已準備儲存
{
num2=StrToInt(Form1->Memo1->Text);
Form1->Memo1->Text=num*num2;
x='1';
}
num=StrToInt(Memo1->Text);

if(x!='2') //num2還沒準備儲存 也就是num1還沒儲存
x='1'; //代表opr已有存放運算子
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn16Click(TObject *Sender)
{
opr='/';
Memo3->Text='/';
if(x=='2') //num2已準備儲存
{
num2=StrToInt(Form1->Memo1->Text);
Form1->Memo1->Text=num/num2;
x='1';
}
num=StrToInt(Memo1->Text);

if(x!='2') //num2還沒準備儲存 也就是num1還沒儲存
x='1'; //代表opr已有存放運算子
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn20Click(TObject *Sender)
{
Memo3->Text='=';
if(x=='2') //num2已準備儲存
{
num2=StrToInt(Form1->Memo1->Text);
x='3'; //代表已經等於過了
}
if(opr=='+')
{
Form1->Memo1->Text=num+num2;
num=StrToInt(Memo1->Text);
}
if(opr=='-')
{
Form1->Memo1->Text=num-num2;
num=StrToInt(Memo1->Text);
}
if(opr=='*')
{
Form1->Memo1->Text=num*num2;
num=StrToInt(Memo1->Text);
}
if(opr=='/')
{
Form1->Memo1->Text=num/num2;
num=StrToInt(Memo1->Text);
}

}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn26Click(TObject *Sender)
{
Form1->Memo1->Text=0;
}
//---------------------------------------------------------------------------

void __fastcall TForm1::BitBtn27Click(TObject *Sender)
{
Form1->Memo1->Text=0;
Form1->Memo3->Clear();
x='0';
opr='0';
num=0;
num2=0;
}

牛刀小試一下 輸入12345

給他乘以一個數字

就乘以20吧

答案算出來了

雖然想法上看起來簡單
但是想要寫成跟WINDOW內建的小算盤一模一樣
還是有點差距
現在還有小數點的問題還沒解決
而且剛剛用了一下才發現還有一些BUG沒有注意到...
真糟糕= =
等有期末考考完我一定要把它修好!

B.期末平時成績結算
Week 16: Linux 傳奇 分數 77.86
Week 15: 期末專案的進度與討論 分數 68.18
Week 14: Apple, Apple, Apple! 分數 35
Week 13: 期末專案計畫書 分數 76.92
Week 12: 數位時代 11 月份心得報告 分數 59.09
平均:63.41

C.自評報告與自評成績(10%)
這學期的課我每次都有參與到
一學期下來
總覺得這堂課跟其他課很不一樣
感覺很像是國外上課的方式?是嗎
其實我也不知道國外上課的方式是怎麼樣
但就不像是國內一般上課的方法
重點是我很喜歡!

我可以重新給自己9.9分嗎XD
留一點空間給自己才不怕再也不能進步了=ˇ=

d. 期末心得
很可惜下學期李遠坤老師的課沒開成 殘念跌死

希望其他科目能夠順利過關(睡起來差不多就要去考試了..)

AND期待老師的微積分開課啦~~~~~~~~

1 則留言:

  1. 基本上, 在課堂上和我討論過專案的同學, 你們可以放心準備考期末考, 因為我知道你們在寫什麼, 而且在課堂上, 我親眼看到你們正在努力寫期末專案, 所以 Bonus分數, 我會直接給你們,...

    你秀一張圖出來給同學看成果就可以了!

    回覆刪除