1

ユーザーが入力した文字列を読み取り、その文字列をループ内で使用して基本的な計算を行うプログラムで作業しています。私の一般的な問題は、ループ内で文字列を使用することです。後でもっと多くのことをしなければならないという事実にもかかわらず、これからは、入力された式に対してボルツァーノの定理をテストするだけです (特に、ルートの可能な間隔を見つけるために)。入力 char を char ごとに読み取り、スイッチ コントロールを使用して中置式を計算する関数の作成を既に開始しています。しかし、私が知りたいのは、そのようなことをする方法があるかどうかです:

{
    /*Already stored the doubles: a, b, precision.*/
    printf("Enter the expression you want to calculate");
    scanf("%s", expression);
    /*User input: (3*i)+(i*i)-3*/
    while( i <= b ){
       fa = (3*i)+(i*i)-3; /*How to insert the string here*/
       fb = (3*(i+precision))+((i+precision)*(i+precision))-3;
       if( fa*fb < 0 )
          printf("There is at least one root in the interval: [ %g, %g ].", a, a+precision);
       /*And goes on...*/
}

ユーザーがループで使用する無効な式 (i^7 など) を入力していないか、それらの式を変換するためのコントロールを既に実装していると仮定します (文字列を読み取って、それを後置または前置表記に変更するなど)。必要な変換)、保存された文字列を割り当てでループに使用する方法はありますか?

4

1 に答える 1