Как сделать чтобы цикл игнорировал условие - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Есть код и нужно что когда условие (x == -10) || (x == 0) || (x == 10) включалось, выполнялся только код
printf("Функция не определена!\n");
. А код:
printf("x=%i\t", x);
printf("y=%f\n", y);
игнорировался, а цикл продолжал дальше работать. Сам код:
#include <conio.h>
#include <stdio.h>
#include <locale.h>
#include <math.h>
 
int main()
{
 
    setlocale(LC_ALL, "Rus");
    int i, x=-10;
    float y;
    for (i=0; i<=20; i++)
    {
        if ((x == -10) || (x == 0) || (x == 10)){
            printf("Функция не определена!\n");
            y=x;
        }
        else if ((x > -3) && (x < 3)){
            printf("<x> больше -3 i меньше 3! y=x!\n");
            y=x;
        }
        else if (x < -3){
            printf("<x> меньше -3! y=(x^2-3x+2)/2! ");
            y = ((powf(x, 2) - 3 * x + 2) / 2);
        }
        else {
            printf("<x> больше 3! y=x^3!");
            y = powf(x, 3);
        }
        printf("x=%i\t", x);
        printf("y=%f\n", y);
        x=x+2;
        
    }
    getch();
    return 0;
}

Решение задачи: «Как сделать чтобы цикл игнорировал условие»

textual
Листинг программы
for (i=0; i<=20; i++, x+=2)
    {
        if ((x == -10) || (x == 0) || (x == 10)){
            printf("Функция не определена!\n");
            y=x;
            continue; 
        }
        else if ((x > -3) && (x < 3)){
            printf("<x> больше -3 i меньше 3! y=x!\n");
            y=x;
        }
        else if (x < -3){
            printf("<x> меньше -3! y=(x^2-3x+2)/2! ");
            y = ((powf(x, 2) - 3 * x + 2) / 2);
        }
        else {
            printf("<x> больше 3! y=x^3!");
            y = powf(x, 3);
        }
        printf("x=%i\t", x);
        printf("y=%f\n", y);
     }

Объяснение кода листинга программы

  1. Объявлены переменные: i, x, y.
  2. Задано значение x=0, инициализирован счётчик i=0.
  3. Цикл for с условием i<=20 и шагом i++, x+=2.
  4. В первой ветке условия:
    • Проверка if ((x == -10) || (x == 0) || (x == 10)).
    • Если условие истинно, то выводится сообщение Функция не определена! и значение y=x.
    • Иначе, управление передаётся следующей ветке условия.
  5. Во второй ветке условия:
    • Проверка else if ((x > -3) && (x < 3)).
    • Если условие истинно, то выводится сообщение <x> больше -3 i меньше 3! y=x!.
    • Иначе, управление передаётся следующей ветке условия.
  6. В третьей ветке условия:
    • Проверка else if (x < -3).
    • Если условие истинно, то выводится сообщение <x> меньше -3! y=(x^2-3x+2)/2!.
    • Иначе, управление передаётся следующей ветке условия.
  7. В последней ветке условия:
    • Проверка else.
    • Если условие истинно, то выводится сообщение <x> больше 3! y=x^3!.
    • Иначе, управление передаётся следующей ветке условия.
  8. В каждой ветке условия вычисляется значение y и выводится значение x и y.
  9. После цикла выводится символ новой строки \n.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 3.727 из 5
Похожие ответы