高中生程式解題系統:明明愛數數

若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。

題目連結 http://zerojudge.tw/ShowProblem?problemid=a215

這題用一個變數 sum 作加總並判斷 sum 是否小於 m。

程式碼:
#include <cmath>
#include <cstdio>

using namespace std;

int main(void){
 int n,m;
 
    while(scanf("%d %d", &n, &m) != EOF)
    {
  int sum = n;
  int cnt = 1;
  
  for(int t = n + 1; sum <= m; t++)
  {
   cnt ++;
   sum += t;
  }
  
  printf("%d\n", cnt);
    }

    return 0;
}

Android 動畫 (Android Animation Design)

若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。

Android中若要做動畫有幾種方式:
1. 自己寫程式
2. Android內建的,例如:Drawable AnimationTween AnimationProperty Animation等。

此文會以參考資料[1]修改成使用Property Animatin來說明,在EclipseTween Animation(下圖)分為alpha(透明)rotate(旋轉)scale(縮放)set(集合)translate(平移)等五種。










































Alpha XML如下
<alpha
android:fromAlpha="0"
android:toAlpha="1"
android:duration="2000">
</alpha>

RotateXML如下:
<rotatexmlns:android="http://schemas.android.com/apk/res/android"
android:fromDegrees="0"
android:toDegrees="360"
android:pivotX="50%"
android:pivotY="50%"
android:duration="5000">
</rotate>

ScaleXML如下:
<scale
android:fromXScale="0.5"
android:toXScale="3.0"
android:fromYScale="0.5"
android:toYScale="3.0"
android:duration="5000"
android:pivotX="50%"
android:pivotY="50%">
</scale>

TranslateXML如下:
<translate
android:fromXDelta="0%p"
android:toXDelta="75%p"
android:duration="800"/>

以上的XML可作用於View的物件上,語法如下:
ImageView image = (ImageView)findViewById(R.id.imageView);
Animation animation= AnimationUtils.loadAnimation(getApplicationContext(), R.anim.clockwise);
image.startAnimation(animation);

那換成Property Animation的話,又會是如何呢?先看XML長什麼樣子,

Alpha:
<objectAnimator
android:duration="600"
android:propertyName="alpha"
android:repeatCount="3"
android:valueFrom="0"
android:valueTo="1.0"
android:valueType="floatType"/>

Rotate:
<objectAnimator
android:duration="3000"
android:propertyName="rotation"
android:repeatCount="1"
android:repeatMode="reverse"
android:valueFrom="0"
android:valueTo="360"
android:valueType="floatType"/>

Scale:
<objectAnimator
android:duration="1000"
android:propertyName="scaleX"
android:valueFrom="3.0"
android:valueTo="1"/>

Translate:
<objectAnimator
android:duration="800"
android:propertyName="X"
android:repeatCount="1"
android:valueFrom="0"
android:valueTo="400"
android:valueType="floatType"/>

以上的XML可作用於含有相對應Getter/SetterView物件上,語法如下:
View image = findViewById(R.id.imageView);
Animator anim= AnimatorInflater.loadAnimator(this, R.animator.fade);
anim.setTarget(image);
anim.start();

所以有看出來有什麼差異嗎?最後附上範例程式:https://github.com/pinglunliao/AndroidAnimationExample




參考資料: