1時間ごとに更新!Amazon.co.jpで今売れている本トップ100   ショッピングモール


掲示板利用宣言

 次のフォームをすべてチェックしてからご利用ください。

 私は

 題名と投稿者名は具体的に書きます。
 課題の丸投げはしません。
 ソースの添付は「HTML変換ツール」で字下げします。
 返信の引用は最小限にします。
 環境(OSとコンパイラ)や症状は具体的に詳しく書きます。
 返信の付いた投稿は削除しません。
 マルチポスト(多重投稿)はしません。

掲示板1

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    記事検索    ログ    タグ一覧

No.5477

最適な演算子
投稿者---johan(2006/03/01 11:21:47)


aが0〜8ならnは1、aが9〜17ならnは0、aが18〜26ならnは1、aが・・・・・・
というふうなプログラムを作るのですが、この計算式を、より最適な演算子で作る方法を教えてもらえませんか?
計算式は1行、ポインタ・構造体は不可。
XP、VCです。お願いします。

#include <stdio.h>
void main(void);

void main(void){
    /*変数の宣言*/
    int a;
    int n;
    /*実数値入力*/
    printf("aの値を入力してください  ");
    scanf("%d",&a);
    /*nに表のとおりに格納するための計算を行う*/
    n=((a/9)+1)%2;
    /*nを表示*/
    printf("%d\n",n);
}




この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:最適な演算子 5478 nop 2006/03/01 12:25:55
<子記事> Re:最適な演算子 5479 si 2006/03/01 12:27:36
<子記事> Re:最適な演算子 5480 かずま 2006/03/01 18:50:55
<子記事> Re:最適な演算子 5481 iijima 2006/03/01 20:33:26


No.5478

Re:最適な演算子
投稿者---nop(2006/03/01 12:25:55)


>この計算式を、より最適な演算子で作る方法を教えてもらえませんか?

「最適/最適でない」の判断は、
どの様な判断なのですか?


この投稿にコメントする

削除パスワード

No.5479

Re:最適な演算子
投稿者---si(2006/03/01 12:27:36)


>aが0〜8ならnは1、aが9〜17ならnは0、aが18〜26ならnは1、aが・・・・・・
>というふうなプログラムを作るのですが、この計算式を、より最適な演算子で作る方法を教えてもらえませんか?
(a/9) の最下位bitを反転すればいいのでは


この投稿にコメントする

削除パスワード

No.5480

Re:最適な演算子
投稿者---かずま(2006/03/01 18:50:55)


int が 4バイトであるが、a は 32767以下でよいとき、

    n = ~(a * 7282) >> 16 & 1;



この投稿にコメントする

削除パスワード

No.5481

Re:最適な演算子
投稿者---iijima(2006/03/01 20:33:26)


なにをもって「最適」というか、判断基準が示されない限り考えようがありません。
これでも条件(1行、ポインタ・構造体不可)は満たしていますよというだけのご参考。

    n = a % 18 < 9;



この投稿にコメントする

削除パスワード

No.5482

Re:最適な演算子
投稿者---johan(2006/03/02 11:30:03)


>siさん
>(a/9) の最下位bitを反転すればいいのでは
なるほど!こういう方法もあるんですね。まったく考えつきませんでした・・・ありがとうございました。

>かずまさん
>a は 32767以下でよいとき
ルールに書いていないのでおそらくダメだと思います(汗)
でもビット演算のいい勉強になる計算式をありがとうございました。
n = ~(a * 7282) >> 16 & 1;

>iijimaさん
>なにをもって「最適」というか
「演算は、最適な演算子を使ってください」って言われたのみなのでなんといえばいいか(汗)すいません。
>n = a % 18 < 9;
こういうこともできるんですね。勉強になります。

皆さんありがとうございました。


この投稿にコメントする

削除パスワード

No.5483

Re:最適な演算子
投稿者---shu(2006/03/02 12:35:50)


>「演算は、最適な演算子を使ってください」って言われたのみなのでなんといえばいいか(汗)すいません。

未だ問題を自分で解釈していないことはないですか?
問題を解釈しないまま、他人の答えだけ見たところで、
一番肝心なところをやり残しているような気がします。

johanさんは、
johaさんが書いたソースを見て、
johanさんの今のレベルで、
最適な演算子を使ってると思えましたか?


この投稿にコメントする

削除パスワード

No.5548

Re:最適な演算子
投稿者---johan(2006/03/06 09:49:26)


>johanさんは、
>johaさんが書いたソースを見て、
>johanさんの今のレベルで、
>最適な演算子を使ってると思えましたか?

自分自身で、できるかぎり、これ以上無いと思う最適な演算子を使っています。



この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    記事検索    ログ    タグ一覧




掲示板提供:Real Integrity