2016/9/30 毎週更新されるので画面があっという間に進化しています
あくまでも現在の使い方になっています。
携帯画面の文字をいらってみます
じゃんけんゲームを以下の順番で作成していきます
以下につづく
表示の携帯はいろいろと準備してあります
右下の境界線を移動して大きくしました
携帯の画面が小さいので50%に拡大しました
文字をクリックすると右の画面がプロパティになります
Hello World!の文字の右にボタンが隠れています
New String Value・・・・を押す
今回はじゃんけんゲームを作ってみます
Resource name: titol_janken
Resource value: じゃんけんゲーム
文字の大きさや色はここをいらってね
ボタン作成
ボタンの配置
Widgets→Button ドラッグ&ドロップ
ガイドラインが表示され中央位置もわかりやすい、位置は後で修正できるので次へ進みます
Resource name: button_showsign
Resource value: ポン
2016年9月30日金曜日
2016年9月13日火曜日
C言語基礎その3
日本語の文字化けは保存時に(ファイル名.C)
「文字コード」⇒UTF-8 で保存してください。
◆ C言語の基礎
自分の名前を印刷してみよう
#include <stdio.h> /* 名前を印刷する */
int main(void)
{
printf("吾輩は猫である \n");
return 0;
}
保存してコンパイル実行してみよう
◆加減乗除の計算
#include <stdio.h> /* 加減乗除 */
int main(void)
{
int a,b,wa,sa,seki,syo;
printf("a,bの数値を入力 \n");
scanf("%d%d", &a , &b ); /*数値の入力*/
wa=a+b; /*和*/
sa=a-b;
seki=a*b;
syo=a/b;
printf("加算 a+b= %d\n", wa ); /*結果の出力*/
printf("減算 a-b= %d\n", sa );
printf("積算 a*b= %d\n", seki );
printf("除算 a/b= %d\n", syo );
return 0;
}
それを直してください。
小数点が表示されませんね?
◆そこで訂正するのだ
#include <stdio.h> /* 加減乗除 */
int main(void)
{
float a,b,wa,sa,seki,syo;
printf("a,bの数値を入力 \n");
scanf("%f%f", &a , &b ); /*数値の入力*/
wa=a+b; /*和*/
sa=a-b;
seki=a*b;
syo=a/b;
printf("加算 a+b= %f\n", wa ); /*結果の出力*/
printf("減算 a-b= %f\n", sa );
printf("積算 a*b= %f\n", seki );
printf("除算 a/b= %f\n", syo );
return 0;
}
保存、コンパイル、実行してみます、どうでしょう小数点以下が表示されます。
ここでさらに疑問がわき調べるほどに奥深く面白くなるか?うーーんあきらめるか分かれ道!
▼疑問
整数部の10進数を2進数に変換する場合は、変換する数値を2で割り商と余りを求めれば2進数に変換できる。 しかし、小数の10進数を2進数に変換するとき、数値によっては小数部が0にならない場合がある。例えば10進数の0.4を2進数に変換すると0011が繰り返され整数部が0にならない。
10進数の0.2を2進数に変換する これを無限小数といい同じパターンが繰り返し出現する場合を循環小数という。 無限小数に対して、小数部が0になるものを有限小数という。 無限小数が発生した場合は、コンピューターの内部では数値の近似値で数値を表す。
▼参考
10進数の60は、2進数では111100である。8ビットで表現するときは、足りないけた数分、上位(左側)に0を補充する。
小数の10進数を2進数に変換するには、変換したい10進数の小数部を小数が0になるまで2倍する。これで求めた整数部が2進数への変換結果である。
10進数0.625は、2進数では0.101である。
整数部の10進数を2進数に変換する場合は、変換する数値を2で割り商と余りを求めれば2進数に変換できる。
しかし、小数の10進数を2進数に変換するとき、数値によっては小数部が0にならない場合がある。例えば10進数の0.4を2進数に変換すると0011が繰り返され整数部が0にならない。
■例題:配列の合計
/* 例題1 配列の合計 */
#include<stdio.h>
int main(void)
{
int i,sum=0;
int dat[10]={6,9,0,3,2,4,8,7,1,5};
for(i=0;i<10;i=i+1)
{
sum=sum+dat[i];
}
printf("合計 %d\n",sum);
return 0;
}
$ dir
hairetsu.c
$ gcc -o hairetsu hairetsu.c
$ dir
hairetsu.c hairetsu.exe
$ ./hairetsu.exe
合計 45
■三角形の面積の計算
/* 三角形の面積 */
#include <stdio.h>
int main(void)
{
float r, h, x; /*変数の宣言*/
printf("三角形の底辺と高さを入力してください。\n");
scanf("%f%f", &r , &h ); /*数値の入力*/
x = r * h / 2.0; /*面積の計算*/
printf("面積 = %f\n", x ); /*結果の出力*/
return 0;
}
1からnまでの和
/* 1からnまでの和 */
#include <stdio.h>
int main(void)
{
int i, n, sum = 0;
printf("2以上の整数を入力:");
scanf("%d", &n);
for(i = 1; i <= n ;i= i+1)
sum=sum+ i ;
printf("答えは %d です\n", sum);
return 0;
}
$ dir
goukei.c sankaku.c
$ gcc -o sankaku sankaku.c
$ gcc -o goukei goukei.c
$ dir
goukei.exe goukei.c sankaku.exe sankaku.c
$ ./goukei.exe
底辺と高さを入力すると合計が出ればOK
$ ./sankaku.exe
/* 円柱の体積 */
#include <stdio.h>
int main(void)
{
float r, h, x, p=3.14157; /*変数の宣言*/
printf("円錐の半径と高さを入力してください。\n");
scanf("%f%f", &r , &h ); /*数値の入力*/
x = r * h * p ; /*体積の計算*/
printf("円柱の体積 = %f\n", x ); /*結果の出力*/
return 0;
}
2016年9月11日日曜日
エミュレータが何とか起動した!
C:\Users\tetsukazu\AppData\Local\Android\Sdk\tools\emulator.exe -netdelay none -netspeed full -avd Nexus_5X_API_23_2
emulator: WARNING: VM heap size set below hardware specified minimum of 228MB
Warning: requested ram_size 1536M too big, reduced to 512M
emulator: WARNING: Setting VM heap size to 384MB
Hax is enabled
Hax ram_size 0x20000000
HAX is working and emulator runs in fast virt mode.
audio: Failed to create voice `goldfish_audio_in'
qemu-system-i386.exe: warning: opening audio input failed
console on port 5554, ADB on port 5555
注意が出るので、これも失敗かと思いましたが、しばらく待つと以下の表示
09-10 23:06:42.306 2378-2378/com.example.tetsukazu.myapplication I/art: Not late-enabling -Xcheck:jni (already on)
09-10 23:06:42.338 2378-2378/com.example.tetsukazu.myapplication W/System: ClassLoader referenced unknown path: /data/app/com.example.tetsukazu.myapplication-1/lib/x86
09-10 23:06:45.978 2378-2378/com.example.tetsukazu.myapplication W/System: ClassLoader referenced unknown path: /data/app/com.example.tetsukazu.myapplication-1/lib/x86
09-10 23:06:46.103 2378-2378/com.example.tetsukazu.myapplication W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
09-10 23:06:46.224 2378-2433/com.example.tetsukazu.myapplication D/OpenGLRenderer: Use EGL_SWAP_BEHAVIOR_PRESERVED: true
[ 09-10 23:06:46.229 2378: 2378 D/ ]
HostConnection::get() New Host Connection established 0xaffca260, tid 2378
[ 09-10 23:06:46.348 2378: 2433 D/ ]
HostConnection::get() New Host Connection established 0xaffc9960, tid 2433
09-10 23:06:46.357 2378-2433/com.example.tetsukazu.myapplication I/OpenGLRenderer: Initialized EGL, version 1.4
emulator: WARNING: VM heap size set below hardware specified minimum of 228MB
Warning: requested ram_size 1536M too big, reduced to 512M
emulator: WARNING: Setting VM heap size to 384MB
Hax is enabled
Hax ram_size 0x20000000
HAX is working and emulator runs in fast virt mode.
audio: Failed to create voice `goldfish_audio_in'
qemu-system-i386.exe: warning: opening audio input failed
console on port 5554, ADB on port 5555
注意が出るので、これも失敗かと思いましたが、しばらく待つと以下の表示
09-10 23:06:42.306 2378-2378/com.example.tetsukazu.myapplication I/art: Not late-enabling -Xcheck:jni (already on)
09-10 23:06:42.338 2378-2378/com.example.tetsukazu.myapplication W/System: ClassLoader referenced unknown path: /data/app/com.example.tetsukazu.myapplication-1/lib/x86
09-10 23:06:45.978 2378-2378/com.example.tetsukazu.myapplication W/System: ClassLoader referenced unknown path: /data/app/com.example.tetsukazu.myapplication-1/lib/x86
09-10 23:06:46.103 2378-2378/com.example.tetsukazu.myapplication W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
09-10 23:06:46.224 2378-2433/com.example.tetsukazu.myapplication D/OpenGLRenderer: Use EGL_SWAP_BEHAVIOR_PRESERVED: true
[ 09-10 23:06:46.229 2378: 2378 D/ ]
HostConnection::get() New Host Connection established 0xaffca260, tid 2378
[ 09-10 23:06:46.348 2378: 2433 D/ ]
HostConnection::get() New Host Connection established 0xaffc9960, tid 2433
09-10 23:06:46.357 2378-2433/com.example.tetsukazu.myapplication I/OpenGLRenderer: Initialized EGL, version 1.4
うまいこと表示しました、何度もいろんなパターンを試しました
Hello World がやっと出ました、このパターンですがどの組み合わせか忘れたのがいかんなーーーー?
2016年9月9日金曜日
USBドライバーインストール
2016年9月8日木曜日
エミュレータがうまく起動しない?
プロキシ設定で利用しているのが原因のようですが?
C:\Users\AppData\Local\Android\Sdk\tools\emulator.exe -netdelay none -netspeed full -avd Nexus_5X_API_23
emulator: WARNING: VM heap size set below hardware specified minimum of 228MB
emulator: WARNING: Setting VM heap size to 384MB
Hax is enabled
Hax ram_size 0x60000000
HAX is working and emulator runs in fast virt mode.
audio: Failed to create voice `goldfish_audio_in'
qemu-system-i386.exe: warning: opening audio input failed
console on port 5554, ADB on port 5555
emulator: WARNING: UpdateCheck: Failure: Error
emulator: WARNING: UpdateCheck: failed to get the latest version, skipping check (current version '25.1.7'
C:\Users\AppData\Local\Android\Sdk\tools\emulator.exe -netdelay none -netspeed full -avd Nexus_5X_API_23
emulator: WARNING: VM heap size set below hardware specified minimum of 228MB
emulator: WARNING: Setting VM heap size to 384MB
Creating filesystem with parameters:
Size: 69206016
Block size: 4096
Blocks per group: 32768
Inodes per group: 4224
Inode size: 256
Journal blocks: 1024
Label:
Blocks: 16896
Block groups: 1
Reserved block group size: 7
Created filesystem with 11/4224 inodes and 1302/16896 blocks
Hax is enabled
Hax ram_size 0x60000000
HAX is working and emulator runs in fast virt mode.
audio: Failed to create voice `goldfish_audio_in'
qemu-system-i386.exe: warning: opening audio input failed
console on port 5554, ADB on port 5555
emulator: WARNING: UpdateCheck: Failure: Error
emulator: WARNING: UpdateCheck: failed to get the latest version, skipping check (current version '25.1.7'
C:\Users\AppData\Local\Android\Sdk\tools\emulator.exe -netdelay none -netspeed full -avd Nexus_5X_API_23
emulator: WARNING: VM heap size set below hardware specified minimum of 228MB
emulator: WARNING: Setting VM heap size to 384MB
Hax is enabled
Hax ram_size 0x60000000
HAX is working and emulator runs in fast virt mode.
audio: Failed to create voice `goldfish_audio_in'
qemu-system-i386.exe: warning: opening audio input failed
console on port 5554, ADB on port 5555
emulator: WARNING: UpdateCheck: Failure: Error
emulator: WARNING: UpdateCheck: failed to get the latest version, skipping check (current version '25.1.7'
C:\Users\AppData\Local\Android\Sdk\tools\emulator.exe -netdelay none -netspeed full -avd Nexus_5X_API_23
emulator: WARNING: VM heap size set below hardware specified minimum of 228MB
emulator: WARNING: Setting VM heap size to 384MB
Creating filesystem with parameters:
Size: 69206016
Block size: 4096
Blocks per group: 32768
Inodes per group: 4224
Inode size: 256
Journal blocks: 1024
Label:
Blocks: 16896
Block groups: 1
Reserved block group size: 7
Created filesystem with 11/4224 inodes and 1302/16896 blocks
Hax is enabled
Hax ram_size 0x60000000
HAX is working and emulator runs in fast virt mode.
audio: Failed to create voice `goldfish_audio_in'
qemu-system-i386.exe: warning: opening audio input failed
console on port 5554, ADB on port 5555
emulator: WARNING: UpdateCheck: Failure: Error
emulator: WARNING: UpdateCheck: failed to get the latest version, skipping check (current version '25.1.7'
2016年9月6日火曜日
C言語基礎その2
例題1
変数を入力して加減乗除の計算への導入
メモ帳で作成。
Cygwinを起動させて保存フォルダーに scan1.c 拡張子.c で保存する
#include<stdio.h>
int main(void)
{
int i,j,s;
printf("seisuuwonyuuryokusitekudasai \n");
scanf("%d %d",&i,&j);
s=i+j;
printf("%d+%d=%d\n",i,j,s);
printf("%d-%d=%d\n",i,j,i-j);
return 0;
}
メモ帳で入力、保存
$ dir
scan1.c
$ dir
scan1.c scan1.exe
$ gcc -o scan1 scan1.c
コンパイル実行 ここでエラーは直す
$ ./scan1
seisuuwonyuuryokusitekudasai キーボードから数字を入力
1
2
1+2=3 計算結果が出ました
1-2=-1
2016/9/6火曜日 の感想
同じように入力してもらうんだけど?
エラー ???????
上記を張り付けると動きますが、間違いに気が付かないのはなぜ?
変数を入力して加減乗除の計算への導入
メモ帳で作成。
Cygwinを起動させて保存フォルダーに scan1.c 拡張子.c で保存する
#include<stdio.h>
int main(void)
{
int i,j,s;
printf("seisuuwonyuuryokusitekudasai \n");
scanf("%d %d",&i,&j);
s=i+j;
printf("%d+%d=%d\n",i,j,s);
printf("%d-%d=%d\n",i,j,i-j);
return 0;
}
メモ帳で入力、保存
$ dir
scan1.c
$ dir
scan1.c scan1.exe
$ gcc -o scan1 scan1.c
コンパイル実行 ここでエラーは直す
$ ./scan1
seisuuwonyuuryokusitekudasai キーボードから数字を入力
1
2
1+2=3 計算結果が出ました
1-2=-1
2016/9/6火曜日 の感想
同じように入力してもらうんだけど?
エラー ???????
上記を張り付けると動きますが、間違いに気が付かないのはなぜ?
登録:
投稿 (Atom)