Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 19.10.2015
Сообщений: 11
1

Bad operand type int for unary operator '!'

05.12.2017, 18:50. Показов 1891. Ответов 3
Метки нет (Все метки)

Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Хнач. до Хкон. с шагом dX.
https://www.cyberforum.ru/cgi-bin/latex.cgi?F=\begin{cases}& \text a(x-c)^2-b pri x = 0 and b!=0 \\ & \text \frac {x-a}{-c} pri x = 0 and b = 0 \\ & \text a+\frac{x}{c} v drugikh sluchayakh \end{cases}
где a, b, c - действительные числа. Функция F должна принимать действительное значение, если выражение (([a] МОД2 [b]) И НЕ ([a] ИЛИ [c])) не равно нулю, и целое значение в противном случае. Через [a], [b], [c] обозначены целые части значений а, b, с, операции НЕ, И, ИЛИ и МОД2 — поразрядные. Значения а, b, с, Хнач., Хкон., dX ввести с клавиатуры.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import java.util.Scanner;
class Pr3 {
   public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
            double a,s,x,b,c,xn,xk,dx,f;
            int i;
            System.out.print ("Enter a = "); a = scan.nextDouble();
            System.out.print ("Enter b = "); b = scan.nextDouble();
            System.out.print ("Enter c = "); c = scan.nextDouble();
            System.out.print ("Enter xn = "); xn = scan.nextDouble();
            System.out.print ("Enter xk = "); xk = scan.nextDouble();
            System.out.print ("Enter step dx = "); dx = scan.nextDouble();
            
            x=xn;
            i=1;
            s = ((int)a^(int)b) & (!((int)a|(int)c));
            System.out.print ("#    x     F\n"); 
 
            while (x<=xk) {
                if ((x==0) && (b!=0)) {
                    f=a*(x-c)*(x-c)-b;
                        if (s!=0) {
                            System.out.print (i + "   " + x + "   " + f); 
                        }
                        else System.out.println (i + "   " + x + "   " + (int) f);
                }
                else
                    if ((x==0) && (b==0)) {
                        if ((c)!=0) {
                            f=(x-a)/(-1*c);
                                if (s!=0) { 
                                    System.out.println (i + "   " + x + "   " + f);
                                }
                                else System.out.println (i + "   " + x + "   " + (int) f);
                        }
                        else System.out.println (i + "   " + x + "     error");
                    }
                    else {
                        if (c!=0) {
                            f=a+x/c;
                                if (s!=0) {
                                    System.out.println (i + "   " + x + "   " + f);
                                }
                                else System.out.println (i + "   " + x + "   " + (int) f);
                        }
                        else System.out.println (i + "   " + x + "     error");
                    }
            x=x+dx;
            i=i+1;
            }
    }
}
Как исправить ошибку в 16 строке "Bad operand type int for unary operator '!'"
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.12.2017, 18:50
Ответы с готовыми решениями:

Bad operand types for binary operator &
Что сделать, чтобы выражение типа if ((a&gt;1) &amp; (n=2)) было без ошибки?

Ошибка: bad operand types for binary operator '>'
Найти минимальное из двух чисел пишут вот так: import java.io.BufferedReader; import...

Java.lang.VerifyError: Bad type on operand stack
Имеется jre 8.0.152, если это важно, стабильно возвращающий ошибку из названия темы. Ниже приведен...

Error: The operator += is undefined for the argument type(s) int,int
Алёна собирает вещи в отпуск. С собой в самолёт она может взять ручную кладь и багаж. Для ручной...

3
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
05.12.2017, 19:00 2
Ты в курсе, что с int не прокатят логические операторы?

Добавлено через 21 секунду
a = 1;
b = 2;
a^b = 3;

Добавлено через 59 секунд
а тебе нужно возвращать из if true или false

Добавлено через 52 секунды
http://developer.alexanderklim... itwise.php

Добавлено через 56 секунд
МОД2 - это что за операция?
0
0 / 0 / 0
Регистрация: 19.10.2015
Сообщений: 11
05.12.2017, 19:02  [ТС] 3
ArtemFM, Сложение по модулю 2
0
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
05.12.2017, 19:08 4
а как звучит по русски условие?

а не равен 0 b не равен 0 с не равен 0... типа того

Добавлено через 18 секунд
?????

Добавлено через 3 минуты
(int) a ^ (int) b != 0 && !(a != 0 || c != 0)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.12.2017, 19:08

Unary minus operator applied to unsigned type, result still unsigned
Подскажите, имеем следующий код: signed int a = -0x80000000; signed int b = -1; signed int...

IN - Operator not applicable to this operand type
Что не так var m : array of integer; .... for j := 0 to OperationCount do if (j...

Operator not applicable to this operand type
Ув.форумчане не могу разораться с проблемой ,на первой кнопке генератор псевдослучайной...

Operator not applicable to this operand type
a:array of longint; b:arrayof boolean; d:array of longint; q, i, j, m, v: integer;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru