def fib(n):
a, b = 0, 1
while a < n:
print(a, end=' ')
a, b = b, a+b
print()
fib(1000)
def fib(n):
a, b = 0, 1
while a < n:
print(a, end=' ')
a, b = b, a+b
print()
fib(1000)
В нём символы в любых возможных кодировках.
files = [open('freq{}.txt'.format(i), 'w') for i in range(N)]
f2 = open('file2.txt')
i = 0
for l in f2.radlines():
files[i].write(l)
i = (i+1) % N
f2.close()
for f in files:
f.close()
если я правильно понял знак хранится в первом бите
Дополнительный код позволяет заменить операцию вычитания на операцию сложения и сделать операции сложения и вычитания одинаковыми для знаковых и беззнаковых чисел, чем упрощает архитектуру ЭВМ.
#include <iostream>
using namespace std;
void foo(int* x) {*x = 7;}
int main(int argc, char** argv)
{
int x = 0;
foo(&x);
cout << x << endl;
return 0;
}
#include <iostream>
using namespace std;
void foo(int& x) {x = 7;}
int main(int argc, char** argv)
{
int x = 0;
foo(x);
cout << x << endl;
return 0;
}
g++ -S ptr.cpp
g++ -S ref.cpp
diff ptr.s ref.s
ctime
, а не time.h
#include <random>
...
std::random_device rd;
std::cout << rd() % 10;
void fill_with_random(int* arr, size_t n)
{
random_device rand;
for (size_t i = 0; i < n; ++i)
{
arr[i] = rand() % 21 - 10;
}
}
cout << y[0][0]; //все прекрасно выводится
/*но если попробовать сделать y[0][0]+=1; то выводится ошибка "выражение должно быть допустимым для изменения левосторонним значением"*/
int operator [](int i)
{
return x[i];
}
int& operator [](int i)
{
return x[i];
}
int operator [](int i)
{
return y[i][0]; /*совершенно непонятно, какую роль здесь играет [0], и почему не работает с просто return y[i]... при изменении [0] на любое другое число, результат не меняется...*/
}
massiv& operator [](int i)
{
return y[i];
}
class Matrix
{
public:
Matrix() {}
int* operator[] (size_t i)
{
return &arr[i][0]; // Указатель на первый элемент i-ой строки.
}
private:
int arr[5][5];
}
Сonio.h (от англ. console input-output — консольный ввод-вывод) — заголовочный файл, используемый в старых компиляторах, работающих в операционных системах MS-DOS, для создания текстового интерфейса пользователя. Тем не менее, он не является частью языка программирования Си, стандартной библиотеки языка Си, ISO C или требуемой стандартом POSIX.
_getch
. for(int x = 0; x < 100; x = x + 2)
{
if(x % 4) cout << x;
}
for(int x = 0; x < 100; x = x + 2)
{
if(x % 4 == 0) continue;
cout << x;
}
for(int x = 2; x <= 100; x += 4)
{
cout << x;
}
max
без использования условных операторов:def max_(a, b):
return (a + b + abs(a-b)) / 2;
m = 0
arr = [1, 2, 3, 4, 5, 6, 98, 65, 190]
for val in arr:
m = max_(m, val)
print(m)
// Следующая строка при компиляции будет заменена на содержимое файла helloworld.h
#include "helloworld.h"
int main(int argc, char** argv)
{
helloworld(); // Вызываем функцию определённую в другом файле.
return 0;
}
// Следующая конструкция называется include guard.
// Благодаря ней вы не сможете вставить содержимое этого файла дважды,
// что поможет вам избежать ошибок переопределения.
#ifndef HELLOWORLD_H
#define HELLOWORLD_H
// Объявление функции.
// Если функция объявлена но не определена в данном файле,
// компилятор будет искать её реализацию в других файлах.
void helloworld();
#endif
// Снова вставляем содержимое файла helloworld.h
#include "helloworld.h"
#include <iostream>
// Определяем функцию.
void helloworld()
{
std::cout << "Hello, world!";
}
for each
, он не является частью стандарта языка C++ и поддерживается только в VisualStudio.for (string strFILE : v_strSEARCH)
{
cout << "Файл " << v_strFILE << endl;
}
return vector<string>();