㈠ 04 年」卡西歐杯」上海市中小學信息科技競賽高三程序設計真題選
困了,今天晚上寫第二個。08.10.18 13:45
---------------------------------------------------
先佔個位置,正在寫。
用C++可以把,其實沒什麼,主要看的是演算法。
----------------------------------------------------
備註:我的輸出沒有按你題設的格式來,不過基本演算法已經闡述出來了。核心部分就在函數checkit裡面。另一個回答我也看了,我只是比他多了一個計算頁碼范圍的判斷,而不是直接循環到最大。
另一道題我正在做。
你可以自己改一改輸出形式。
08.10.18 13:23
#include "iostream.h"
int checkit(int n,int s,int total);
void main()
{
while(1)
{
int s=0,st=0,smax=0,smin=10;
cin>>s;//輸入頁碼總和S
//if(s=='q') break;
//確定原始頁碼的范圍
int n=3; //假設書最少也是3頁
for(;;n++)
{
st=2*n*n+n;//頁碼為N時的總頁碼,沒有缺頁情況
smax=8*n-6;
if(s>st-smin) {cout<<n<<",no"<<endl;continue;}
if(s<st-smax) {cout<<n<<",exit"<<endl;break;}
if(s<=(st-smin)&&s>=(st-smax)) {cout<<n<<",check"<<endl;checkit(n,s,st);}
}
}
}
int checkit(int n,int s,int total)
{
//if(s==total-10) {cout<<"Lastpage="<<2*n<<endl<<"Losing=1,2,3,4"<<endl;return 1;}
// if(s==total-8*n+6) {cout<<"Lastpage="<<2*(n-2)<<endl<<"Losing="
// <<2*n-3<<","<<2*n-2<<","<<2*n-1<<","<<2*n<<endl; return 1;}
//上面是兩種特殊情況的辨別,即缺前兩頁,和缺最後兩頁
//一般性的檢測
//上面的代碼是剛開始輔助性的,可以刪去
int i,j;
for(i=2;i<n;i++)
{
for(j=i+1;j<n;j++)
{
if(total-(4*i-1)-(4*j-1)==s)
{
cout<<"Lastpage="<<2*n<<endl
<<"Losing="<<2*i-1<<","<<2*i<<","<<2*j-1<<","<<2*j<<endl;
}
}
}
return 1;
}
㈡ 高中信息技術教的編程語言是什麼。。
VB語言,高中信息技術中的要求是VB,而且只是一些相對基礎性的東西。PASCAL和C是信息技術競賽考試的內容,因為難度相對高一些。
VB,1991年,美國微軟公司推出了Visual Basic(可間稱VB),目前的最新版本是VB 2005(VB8)中文版。Visual意即可視的、可見的,指的是開發像windows操作系統的圖形用戶界面的方法,它不需要編寫大量代碼去描述界面元素的外觀和位置,只要把預先建立好的對象拖放到屏幕上相應的位置即可。
㈢ 高中信息技術上編程那個工具叫什麼,是每個電腦上都自帶的嗎還是要下載那個軟體
目前高中啟蒙用的是VB,也就是Visual Basic,具體的含義可以去網路下。這個是一種編程工具,雖然是微軟開發的,但是不是系統自帶的工具,需要去網上下載,直接搜索 VB下載,應該會找到很多,謝謝