四則演算練習
5357 ワード
テーマの要件
試験機能(Beta) を追加
4つの演算のルールと式を入力し、テストプログラムは式がルールに合っているかどうかを自動的に判断することができます.
入出力の例:
入力:
パラメータの説明を入力:configで: numberOfExpression:式の個数 range:式中のオペランドの範囲 hasFraction:スコアを含むかどうか(true:はい、false:いいえ) hasMultipleAndDivide:乗算除算を含むかどうか(true:はい、false:いいえ) hasParentheses:かっこを含むかどうか(true:はい、false:いいえ) expressionsで key表現式 value式の値 を表す
出力:
出力パラメータの説明: config:入力したconfigと同じ results:各式が正しいかどうかについて説明します.keyは式で、valueのkeyは正しいかどうか、valueの中で式がどの条件を満たしていないかを説明します. enough:条件を満たすのに十分な式が生成されたか否かを示す RESTfulインタフェースアドレス(試用版)、インタフェースメソッドタイプ:POST インタフェースパラメータ名:answer パラメータ値:入力例 を参照
マルチ言語処理の追加 英語 簡体字中国語 結果ページ最適化 解答オプションを表示するかどうかを追加 devブランチを追加し、通常開発に使用し、テストが安定した後、mergeはmasterブランチに、現在サーバー上で実行されているのはmasterブランチの内容 である. devブランチ更新 Spring boot 2.0.0 に更新ログ処理 を追加増加異常処理
JDK 1.8 Maven 3.5.0 IntelliJ IDEA
じっこうアドレス
インタフェースアドレス
入力パラメータ、文字列タイプ、構成項目は構成パラメータを参照してください:
戻り値:
入力:
戻り値:
デフォルトのJSON構成を返します.
-nまたは-number:式を生成する個数 -rまたは-range:問題の数値(自然数、真分数、真分数分母)の範囲を制御します.このパラメータは1または他の自然数に設定できます.このパラメータは与えられなければならない.そうしないと、プログラムはエラーを報告し、ヘルプ情報 を与える.-hf:有無点数 -md:乗算法があるかどうか -hp:括弧があるかどうか -hn:負の有無 -as:答えを生成するかどうか 少なくとも1つの演算子、最大3つの演算子 注意:解析コマンドラインパラメータはJCommanderで解析されます.
最初の考えは、実は簡単で乱暴で、生成する演算式を文字列と見なして、この文字列の中で:演算子個数=演算数の個数-1=>演算数=演算子個数+1 (演算子個数+演算数個数)サイズの配列を開き、配列内の各要素を遍歴し、偶数位置挿入演算数、奇数位置挿入演算子を挿入します. スコアがある場合は、まずランダムにスコアが挿入可能な位置を探し、他の演算数が挿入可能な位置にスコアまたは整数を挿入します. は乗算と除算があるかどうかを判断し、ある場合は{"+","-","x","÷"}から挿入演算子の位置をランダムに探し、乗算と除算がなければ{"+","-"}から挿入演算子の位置をランダムに探します. 演算子が除算され、直後の演算数が0の場合、0は0でない演算数に再置き換えられます. 括弧がある場合は、0番目のオペランドからn-1番目のオペランドの中からランダムに1つのオペランドを選択する前に1つの"("がm番目のオペランドであると仮定し、m+1番目のオペランドからn番目のオペランドの中からランダムに1つのオペランドの後に")" を選択する.
文字列式(接尾辞式)を二叉木に変換し、この二叉木の左右のサブツリーをカスタムソートします.左右のサブツリーがどのように変換されても、最終的には順序付けされます.2つの式で生成された二叉木がソートされた後の文字列のシーケンスが一致すると、2つの式が重複していることを示します.
接尾辞式を接尾辞式に変換し、その後、接尾辞式を に計算する計算の過程で、1つのスタックを設置して、操作数はスタックを押して、オペレータに出会って、スタックの2つの操作数を出して計算結果を行ってスタックを押して、最後にスタックの残りの1つの要素は結果です.
How to use Log4j 2 with Spring Boot Guide to Spring Boot REST API Error Handling Spring BootにおけるWebアプリケーションの統合異常処理 A Guide To Spring Redirects Spring MVC and Thymeleaf: how to access data from templates A quick guide to Internationalization in Spring Boot
update 2018-04-12
4つの演算のルールと式を入力し、テストプログラムは式がルールに合っているかどうかを自動的に判断することができます.
入出力の例:
入力:
{
"config": {
"numberOfExpression": 30,
"range": 30,
"hasFraction": false,
"hasMultipleAndDivide": true,
"hasParentheses": true
},
"expressions": {
"3 × ( 3 + 3 )": "18",
"( 3 + 3 )": "6"
}
}
パラメータの説明を入力:configで:
出力:
{
"config": {
"numberOfExpression": 30,
"range": 30,
"hasFraction": false,
"hasMultipleAndDivide": true,
"hasParentheses": true,
"hasNegative": false,
"answer": false,
"maxNumberOfOperation": 3
},
"results": [
{
"3 × ( 3 + 3 )": {
"true": " "
}
},
{
"( 3 - 1 )": {
"false": " "
}
}
],
"enough": false
}
出力パラメータの説明:
update 2018-04-06
update 2018-04-04
開発環境
説明
じっこうアドレス
インタフェースアドレス
エクスプレッションインタフェースの作成方法
String generate(String configs)
入力パラメータ、文字列タイプ、構成項目は構成パラメータを参照してください:
{
"numberOfExpression": "10",
"range": "10",
"hasFraction": "false",
"hasMultipleAndDivide": "true",
"hasParentheses": "false",
"hasNegative": "true",
"answer": "true"
}
戻り値:
[8 - 5 ÷ 6 × 9 = 0.5, 7 + 8 = 15.0, 9 × 9 = 81.0, 7 × 6 + 4 ÷ 7 = 42.57142857142857, 5 ÷ 7 - 4 = -3.2857142857142856, 2 - 9 - 1 + 1 = -7.0, 3 ÷ 2 × 6 = 9.0, 1 × 0 = 0.0, 4 × 3 = 12.0, 3 - 7 - 5 = -9.0]
インタフェースメソッド
String answer(String expression)
入力:
4 × ( 9'1/7 - 5 ) ÷ 3
戻り値:
4 × ( 9'1/7 - 5 ) ÷ 3 = 5.523809523809524
デフォルトのコンフィギュレーション・アイテム・インタフェースの取得方法
String retrieveDefaultTemplate()
デフォルトのJSON構成を返します.
{
"numberOfExpression": "10",
"range": "10",
"hasFraction": "false",
"hasMultipleAndDivide": "true",
"hasParentheses": "false",
"hasNegative": "true",
"answer": "true"
}
構成パラメータ
式ロジックの生成
最初の考えは、実は簡単で乱暴で、生成する演算式を文字列と見なして、この文字列の中で: