русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Задачи и упражнения.

1. Пусть b1, b2, b3 — переменные логического типа. Записать оператор if и операторы присваивания, которые выполняют те же действия, что и оператор

b1= b2 || b3.

Решение: if (b2) b1=true; else b1=b3;

2. Нарисовать область плоскости, в которой и только в которой для вещественных величин x и y следующее логическое выражение истинно:

а) (fabs(x) < 1) > (fabs(y) < 1);

б) ! (fabs(x) < 1 ) = = (fabs(y) < 1);

в) ! (( fabs(x) < 1 ) = = (fabs(y) < 1)).

Указания к решению. Для величин логического типа следующие выражения истинны: true > false, true = = true, false = = false,
! true = = false, true = = ! false.

a) Надо найти область плоскости, в которой и только в которой одновременно первое неравенство истинно, а второе ложно, т. е. такие точки, для которых выражение (fabs(x)<1) && (fabs(y)>=1) истинно.

б) !(fabs(x) < 1) равносильно неравенству (fabs(x) >= 1). Поэтому надо найти область плоскости, в которой и только в которой выражение (fabs(x)>=1) &&( fabs(y)<1) ||( fabs(x)<1) &&( fabs(y)>=1) истинно.

в) Сначала определяем область, в которой и только в которой выражение (fabs(x)<1) && ( fabs(y)<1) ||( fabs(x)>=1) && (fabs(y)>=1) истиннo. Это был бы ответ, если бы не было операции отрицания. Операция отрицания в качестве ответа оставит точки, не вошедшие в эту область.

3. Записать следующее логическое выражение, используя операции логического умножения и сложения (&& , || ) и не используя сравнение логических величин:

а) (y>x) = = (x>0);

б) (y > x) > !(x > 0).

Решение: a) (y > x) && ( x> 0) || (y <= x) && (x <= 0);

б) y>x && x>0.

4. Не используя логических операций, записать выражение, принимающее значение true тогда и только тогда, когда точка плоскости с координатами (x, y) принадлежит первой четверти, включая и оси координат, или третьей четверти, не включая оси координат.

Решение: (x>=0) = = (y>=0).

5. Пусть bool b1, b2, b3, b4; Записать оператор if и операторы присваивания, которые выполняют те же действия, что и следующий оператор:

а) b1= b2 && b3;

б) b1=b2 || b3 && b4;

в) b1=(b2 || b3) && b4;

г) b1= !(b2 && b3 || b4).

6. Записать с помощью логических операций и оператора присваивания,не используя оператор if:

bool b1, b2, b3,r;

if (!b1) r=false;

else if (!b2) r=false;

else r=b3;

7. Объяснить работу следующей программы:

float x,y; bool lg; cin>>x>>y;

while (!(x==100 && y==100))

{ lg=x>0; cout<<"x>0 "<<lg<<" y>0 "<<(y>0)<<" "<<(lg > (y>0));

if (lg > (y>0)) cout<<" YES ";

else cout<<" NO";

cin>>x>>y;

}

8. Записать следующее логическое выражение, используя логические операции и не используя сравнение логических величин:

a) !((y > x) > (x>0));

б) (y > x) != (x > 0) ;

в) ! (y > x) > (x > 0).

Нарисовать область плоскости, в которой и только в которой записанное логическое выражение истинно.

9. Записать логическое выражениес помощью сравнения логических величин, не используя операций && и ||:

а) x*x+y*y > 1 && y <= x;

б) x*x+y* y> 1 && y <= x || x*x+y*y <= 1 && y > x;

в) x>0 && y > 0 || x <= 0 && y <= 0.

Нарисовать область плоскости, в которой и только в которой записанное логическое выражение истинно.

10. Пусть B1= x*x – y*y < 4; B2= y>0;

а) Записать логическое выражение B1 && B2, используя сравнение булевских величин и не используя логических операций.

б) Записать выражение B1<B2, не используя сравнение булевских величин.

11. Нарисовать область плоскости, в которой и только в которой для вещественных x и y следующее логическое выражение истинно:

а) (fabs(x) > 1) > (fabs(y)> 1);

б) ! (fabs(x) > 1 ) = = (fabs(y)> 1);

в) ! (( fabs(x) > 1 ) = = (fabs(y) > 1)).

12. Операторы

int x=8, y=4;

cout <<(x&y)<<", "<<(x&&y)<<", "<<(x|y)<<", "<<(x||y)

<<", "<<(y<x<1)<<", "<<(x<y<1)<<endl;

выведут 0, 1, 12, 1, 0, 1. Объяснить результат.

13. Объяснить выполнение printf("%c %d %c %d\n", a, a, b, b); Результат, как и раньше, зависит от объявления и от введенных величин.

Вариант 1. Переменные объявлены int a, b; и вводим два числа — 97 и 120. Тогда будет выведено a 97 x 120, т. е. по формату %c выводятся символы, коды которых хранятся в переменных a и b, а по формату %d — эти целые числа, которые интерпретируются как коды символов.

Вариант 2. Этот же результат получим, если объявим char a, b; и введём два символа — a и x.

14. Что будет выведено и почему:

а) char ch; cin>>ch; cout<< (ch*2); если введём 1? d?:

б) char CH=1; cout<<” “<<(CH*2);

в) char ch2=’1’; cout<<” “<<(ch2*2);

г) printf (“ \n %c %d %c %d %c %d”, ch, ch, CH, CH, ch2, ch2);

Объявление и инициализация такие, как в а), б), в).

д) int ci; cin>>ci; printf(“\n %c %d”, ci,ci); если введём 40?

Глава 5
МАТРИЦЫ (ДВУХМЕРНЫЕ МАССИВЫ)

Просмотров: 589


Вернуться в оглавление



Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.