русс | укр

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

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

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

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


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

Sizeof выражение


Дата добавления: 2013-12-23; просмотров: 599; Нарушение авторских прав


Полученный массив

5 -7 16 12 -5 22 -8 15 6 2

Исходный массив

End.

Close(f)

Writeln;

End;

End;

Begin

Writeln(f);

Rewrite(f);

Begin

Assign(f,’massiv.pas’);

{------печать исходного массива ----------}

writeln(f,'исходный массив');

for i:=1 to n do

write(f, x[i],’ ‘);

{------сортировка массива по возрастанию-----}

for j:=1 to n-1 do

or i:=1 to n-j do

if x[i]>x[i+1] then

buf:=x[i];
x[i]:=x[i+1];

x[i+1]:=buf

{---печать отсортированного массива массива -----}

writeln(f,'полученный массив ');

for i:=1 to n do begin

write(f,' x[',i,']=',x[i]);

if i=5 then writeln(f)

Ответ в файле ’massiv.pas’:

x[1]=-8 x[2]=-7 x[3]=-5 x[4]=2 x[5]=5

x[6]=6 x[7]=12 x[8]=15 x[9]=16 x[10]=22

sizeof( тип)

Пример:

#include <iostream.h>

int ma1n(){

float x = 1;

cout << "sizeof (float) :" << sizeof (float);

cout << "\nsizeof x :" << sizeof x;

cout << "\nsizeof (x + 1.0) :" << sizeof (x +1.0);

return 0;

}

Результат работы программы:

sizeof (float) : 4

sizeof x : 4

sizeof (x + 1.0) : 8

Последний результат связан с тем, что вещественные константы по умолчаниюимеют тип doublе, к которому, как к более длинному, приводится тип переменной X и всего выражения. Скобки необходимы для того чтобы выражение, стоящее в них, вычислялось раньше операции приведения типа, имеющей больший приоритет, чем сложение.

Операции отрицания(-, ! и~). Арифметическое отрицание (унарный минус -) изменяет знак операнда целого или вещественного типа на противоположный. Логическое отрицание (!) дает в результате значение 0, если операнд есть истина (не нуль), и значение 1, если операнд равен нулю. Операнд должен быть целого или вещественного типа, а может иметь также тип указатель. Поразрядное отрицание (~), часто называемое побитовым, инвертирует каждый разряд в двоичном представлении целочисленного операнда.



Деление(/) и остаток от деления(%). Операция деления применима к операндам арифметического типа. Если оба операнда целочисленные, результат операции округляется до целого числа, в противном случае тип результата определяется правилами преобразования. Операция остатка от деления применяется только к целочисленным операндам. Знак результата зависит от реализации.

#include <stdio.h>

int main(){

int x = 11, у = 4;

float z = 4;

printf("Результаты деления: %d %f\n", x/y, x/z);

printf("Остаток: %d\n",. x%y);

return 0;

Результат работы программы:

Результаты деления: 2 2.750000

Остаток: 3

Операции сдвига(<< и >>) применяются к целочисленным операндам. Они сдвигают двоичное представление первого операнда влево или вправо на количество двоичных разрядов, заданное вторым операндом. При сдвиге влево (<<) освободившиеся разряды обнуляются. При сдвиге вправо (>>) освободившиеся биты заполняются нулями, если первый операнд беззнакового типа, и знаковым разрядом в противном случае. Операции сдвига не учитывают переполнение и потерю значимости.

Операции отношения(<, <=, >, >=,. ==,. !=) сравнивают первый операнд со вторым. Операнды могут быть арифметического типа или указателями. Результатом операции является значение true или false (любое значение, не равное нулю, интерпретируется как true). Операции сравнения на равенство и неравенство имеют меньший приоритет, чем остальные операции сравнения.

Поразрядные операции(&, |, ^) применяются только к целочисленным операндам и работают с их двоичными представлениями. При выполнении операций операнды сопоставляются побитово (первый бит первого операнда с первым битом второго, второй бит первого операнда со вторым битом второго, и т д.).

При поразрядной конъюнкции, или поразрядном И (операция обозначается &) бит результата равен 1 только тогда, когда соответствующие биты обоих операндов равны 1.

При поразрядной дизъюнкции, или поразрядном ИЛИ (операция обозначается |) бит результата равен 1 тогда, когда соответствующий бит хотя бы одного из операндов равен 1.

При поразрядном исключающем ИЛИ (операция обозначается ^) бит результата равен 1 только тогда, когда соответствующий бит только одного из операндов равен 1.

#inclucle <iostreani.h>

int main(){

cout << "\n 6 & 5 = " << (6 & 5);

cout << "\n 6 | 5 = " << (6 | 5);

cout << "\n 6 ^ 5 = " << (6 ^ 5);

return 0;

}

Результат работы программы:

6 & 5 = 4

6 | 5 = 7

6 ^ 5 = 3

Логические операции(&& и||). Операнды логических операций И (&&) и ИЛИ (||) могут иметь арифметический тип или быть указателями, при этом операнды в каждой операции могут быть различных типов. Преобразования типов не производятся, каждый операнд оценивается с точки зрения его эквивалентности нулю (операнд, равный нулю, рассматривается как false, не равный нулю - как true).

Результатом логической операции является trueили false. Результат операции логическое И имеет значение trueтолько если оба операнда имеют значение true.Результат операции логическое ИЛИ имеет значение true,если хотя бы один из операндов имеет значение true.Логические операции выполняются слева направо. Если значения первого операнда достаточно, чтобы определить результат операции, второй операнд не вычисляется.

Операции присваивания(=, +=,-=, *= и т.д.). Операции присваивания могут использоваться в программе как законченные операторы.

Формат операции простого присваивания (=):



<== предыдущая лекция | следующая лекция ==>
 | Операнд_1? операнд_2 : операнд_3


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


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

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

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


 


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

 
 

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

Генерация страницы за: 0.003 сек.