C#: Чтение XML-документа (XmlDocument)

На сегодняшний день XML является одним из наиболее распространенных (наряду с JSON) форматов для передачи данных. Сегодня я хотел бы рассказать о том, как можно читать XML-документы штатными средствами C#.

Continue reading

C++: Число слов в строке

Пользователь вводит строку, нужно посчитать, сколько в ней слов.

Слова разделяются пробелами, значит, достаточно посчитать их количество, но пробелов всегда на 1 меньше, чем слов (исключая случай когда пробел стоит на конце строки), поэтому хорошо бы прибавить к числу пробелов единичку.

Continue reading

C++: Антисимметричная матрица

Задача:

Напишите программу которая создает антисимметричную матрицу размера N, заполненную случайными числами. Антисимметричная матрица: Aij=-Aji

Алгоритм примерно такой: Спрашиваем у пользователя, какого размера матрицу он бы хотел видеть. Стандартно всё заполняем случайными числами. После этих операций инициируем еще циклы, в которых изменяем значения

Continue reading

C++: Вес Хэмминга с использованием atoi, itoa. Не рекурсия

Штука то интересная. Вес Хэмминга это количество единиц в числе, если его перевести в двоичную систему. Реализовать можно разными способами. Например так:

Continue reading

C++: Перевести строку в нижний регистр.

В си есть функция для перевода в нижний регистр strlwr(), но можно написать и собственную реализацию:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include "stdafx.h"
#include "locale.h"
#include "string.h"
 
void main()
{
    char string[255];
    setlocale(0,"Russian");
    printf("Введите слово:\n");
    gets(string);
    for(int i=0;i<strlen(string);i++)
    {
        if(string[i]>='A' && string[i]<='Z')
        {
            string[i]+=32;
        }
    }
    printf("%s \n",string);
}
#include "stdafx.h"
#include "locale.h"
#include "string.h"

void main()
{
    char string[255];
    setlocale(0,"Russian");
    printf("Введите слово:\n");
    gets(string);
    for(int i=0;i<strlen(string);i++)
    {
        if(string[i]>='A' && string[i]<='Z')
        {
            string[i]+=32;
        }
    }
    printf("%s \n",string);
}

C++: Заполнить матрицу нолями, кроме главной и побочной диагоналей

Это во многом стандартное заполнение, но с условиями. Главная диагональ вычисляется по формуле i==j, а побочная j==N-i-1

Такие образом, если элемент находится на главной или побочной, заполняем случайно, иначе-нуликами.

Continue reading

C++: Найти модуль числа

Задача сводится к нахождению модуля числа.

Я вижу 2 варианта решения этой задачи.

  1. Использовать функцию abs(), например abs(-5) вернет 5.
  2. Реализовать что-то подобное самостоятельно

Continue reading

C++: Нижнеугольная матрица

Написать программу,которая выводит на экран нижнетреугольную матрицу. Нижнетреугольная матрица — такая матрица, у которой все элементы которые ниже главной диагонали равны нулю, а все другие заданы случайным образом.

Continue reading