C++ Дальнейший путьhttps://www.cyberforum.ru/ cpp-beginners/ thread929241.html Всем доброго времени суток. На данный момент прочитал 2 книги по С++ (Шилдт - руководство для начинающих и Лафоре - ооп в С++. Хотелось бы спросить совета в каком направлении двигаться дальше. С одной стороны хочется взглянуть на С#, с другой, возможно, имеет смысл углубить знания в С++. Что по вашему было бы правильнее для студента 2ого курса?
C++ Перевод из строки в число Подскажите в чем ошибка. Метод должен принимать строку в виде $456 654 456.36 и выдавать число типа double.
double bMoney::getmoney()
{
unsigned int i;
char Mass, Mass2;
cout << "Введите сумму: ";
cin.get(Mass, MAX);
for(i = 0; i < strlen(Mass); i++)
{
switch (Mass)
C++ Задача "Натуральный ряд чисел"https://www.cyberforum.ru/ cpp-beginners/ thread929203.html (Время: 1 сек. Память: 16 Мб)
Натуральные числа записаны в строку без каких-либо разделителей. Начало этой строки имеет вид 123456789101112131415161718192021… .
Требуется написать программу, которая определит первое вхождение десятичной записи заданного числа N в этой строке.
Входные данные
Входной файл INPUT.TXT содержит заданное число N (1 <= N <= 104).
Выходные данные
Вывод строки в обратном порядке C++ Тупень возвращается.
Имеем функцию для чтения массива в обратном порядке. Смысл ясен, но требуются пояснения в деталях.
void print_reverse(char *s)
{
size_t len = strlen(s);
char *t=s + len - 1; // почему мы в правой части выражения к массиву s добавляем уменьшенную на единицу длину //// массива s ? почему мы складываем массив с числом ?
while (t >= s) {
printf("%c", *t);
C++ Задача "Сокобан"Ограничение времени: 5.0 секунды
Ограничение памяти: 64 МБ
Программист Стас на время отпуска устроился поработать в японскую компьютерную фирму Thinking Rabbit. Сначала идея казалась замечательной — и на халяву съездить за границу, и заработать, и набраться опыта у японских коллег. Но оказалось, что программисты без знания японского фирме не нужны, и Стаса отправили работать кем-то вроде...https://www.cyberforum.ru/ cpp-beginners/ thread929172.html
C++ Программа из книги, в которой осуществляется вызов двух функций не работаетhttps://www.cyberforum.ru/ cpp-beginners/ thread929095.html Может кто поможет, не работает программа с книги "Моя первая программа на С/С++" А.Нейбауэр (Листинг 7.1. Программа, в которой осуществляется вызов двух функций.) Я уже понял что книжку для начала я выбрал слишком древнюю, ошибок в ней тоже не мало, но распечатал, дочитать надо, та и с нуля в ней не плохо все разжёвано, даже местами слишком. Программа ругается на функцию question() если добавлять...
Запись/чтение структур (файлы) + разница между FILE * и <fstream> C++ Всем привет. Порыскал по форуму, погуглил... Решения есть, но они не ясны (что, почему да как) и не все работают. Однако, я так и не нашёл конкретных и ясных объяснений по-этому поводу. И т.к. в С++ я пока конкретный чайник (и видать ещё надолго), буду очень признателен если кто-либо сможет объяснить Коболисту всю эту канитель на пальцах...
И так, к делу! Первое, что я так и не понял: возможно...
C++ Список С++Доброго времени суток всем. Возник вопрос, как его решить не знаю. Те кто знаком c python знают, что там есть такая штука как "list". В нем можно хранить объекты любых типов. Вставл вопрос, а как такое на С++ реализуется а еще лучше, возможно ли?
template<typename T>
class List
{
private:
T data;
List<T>* next;
public:
//и дальше по тексту
}https://www.cyberforum.ru/ cpp-beginners/ thread929040.html
C++ невозможно преобразовать параметр 1 из "int" в "int *&"https://www.cyberforum.ru/ cpp-beginners/ thread929023.html #include <iostream>
using namespace std;
void Func1(int *n)
{
cout << *n << " = " << *n << endl;
}
void Func2(int &n)
{
C++ DLL ошибка LNK2019 Добрый день!
Рассматриваю пример, Создание и использование Dll, на MSDN.
Делаю все, что требуется, создал dll, создал проект, указал нужные доп. пути к файлам, но приложение выдает ошибку:
1>MyExecRefcDll.obj : error LNK2019: ссылка на неразрешенный внешний символ "public: static double __cdecl MathFuncs::MyMathFuncs::Divide(double,double)" (?Divide@MyMathFuncs@MathFuncs@@SANNN@Z) в...
C++ Экспорт из 3d max, наложение текстурыЗдравствуйте. Проблема с наложением текстуры.
С помощью библиотеки lib3ds.lib импортирую 3ds файл в программу (простой куб), накладываю текстуру. Текстура независимо от размера (64х64 или 512х512) накладывается маленькими повторяющимися квадратами. Когда беру 3ds файл из примера (был вместе с библиотекой) текстура накладывается нормально. Когда делаю в 3d max сцену из
Доброго времени суток.
Неделю назад ради интереса отправил свое резюме в одну компанию, куда требуются с++ юниоры. Получил от них тестовое задание. Я ожидал, что они мне откажут (опыта то у меня действительно мизер), но хотелось бы узнать у более опытных людей, какое решение задач "ожидает" компания от соискателя для продолжения с ним отношений.
Далее идет 4 задачи и мой вариант решения каждой из них.
1. Распечатать произвольное число в двоичной системе исчисления.
Описание.
Написать функцию, принимающую на вход произвольное целочисленное значение и возвращающую строку, содержащую его представление в двоичной системе исчисления.
Декларация.
voidNumberAsBinary(
char* _result,// строка с результатом
unsignedint _number// произвольное число
)
Ожидаемый результат.
Например, для числа 13 данная функция должна вернуть строку "1101".
Проверка работы.
Решение должно демонстрировать работу функции на примере 10 случайных чисел в диапазоне 0 до 512.
#include <iostream>#include <stdlib.h>#include <time.h>using std::cout;using std::endl;void numberAsBinary(char*_result, unsignedint _number);int main(){
setlocale(LC_ALL, "Russian");char*result =newchar[11];unsignedint number;srand((unsigned)time(NULL));for(int i =1; i <=10; i++){
number =rand()%513;
numberAsBinary(result, number);cout<<"Число "<< number <<" в двоичной системе счисления равно "<< result << endl;}delete[] result;system("pause");return0;}void numberAsBinary(char*_result,
unsignedint _number
){staticint i;
i =0;if(_number !=1)
numberAsBinary(_result, _number /2);
_result[i]=(_number %2)+'0';
i++;
_result[i]='\0';}
2. Сгенерировать неупорядоченный массив целых чисел от 1 до N.
Описание.
Написать функцию, принимающую на вход произвольное целочисленное значение и возвращающую массив, содержащий последовательность чисел от 1 до этого значения, в котором каждое число последовательности находится в заведомо случайной позиции.
Декларация.
void GenerateRandomArray(
int * _result, // возвращаемыймассив
unsignedint _maxValue// максимальное число в последовательности
)
Ожидаемый результат.
Например, 2 последовательных запуска данной функции с параметром 7 могут сгенерировать последовательности вида
{2, 5, 7, 3, 4, 1, 6}
{5, 1, 3, 4, 6, 2, 7}
Проверка работы.
Решение должно демонстрировать работу функции на примере 4 случайных чисел в диапазоне от 5 до 15.
#include <iostream>#include <stdlib.h>#include <time.h>#include <iomanip>using std::cout;using std::endl;void generateRandomArray(int*_result, unsignedint _maxValue);int main(){
setlocale(LC_ALL, "Russian");unsignedint maxValue;srand((unsigned)time(NULL));for(int i =1; i <=4; i++){
maxValue =5+rand()%11;int*result =newint[maxValue];
generateRandomArray(result, maxValue);cout<<"Неупорядоченные числа от 1 до "<< std::setw(2)<< maxValue <<": ";for(unsignedint i =0; i < maxValue; i++)cout<< result[i]<<' ';cout<< endl;delete[] result;}system("pause");return0;}void generateRandomArray(int*_result,
unsignedint _maxValue
){int ind1, ind2, tmp;for(unsignedint i =0, j =1; i < _maxValue; i++, j++)
_result[i]= j;for(int i =1; i <=20; i++){
ind1 =rand()% _maxValue;
ind2 =rand()% _maxValue;
tmp = _result[ind1];
_result[ind1]= _result[ind2];
_result[ind2]= tmp;}}
3. Сортировка массива.
Описание.
Написать функцию, принимающую в качестве параметра массив неупорядоченных целых чисел (сгенерированный с помощью функции из задачи 2) и выполняющую его сортировку.
Декларация.
voidSort(
int* _values,// сортируемый массив
unsignedint _count// количество элементов в массиве
)
Ожидаемый результат.
Например, массив вида {2, 5, 7, 3, 4, 1, 6} будет преобразован данной функцией в {1, 2, 3, 4, 5, 6, 7}.
Проверка работы.
Решение должно демонстрировать работу функции на примере результатов, полученных при решении задачи 2 (последовательностей, сгенерированных для 4 случайных чисел в диапазоне от 5 до 15).
#include <iostream>#include <stdlib.h>#include <time.h>#include <iomanip>using std::cout;using std::endl;void generateRandomArray(int*_result, unsignedint _maxValue);void Sort(int*_values, unsignedint _count);int main(){
setlocale(LC_ALL, "Russian");unsignedint maxValue;srand((unsigned)time(NULL));for(int i =1; i <=4; i++){
maxValue =5+rand()%11;int*result =newint[maxValue];
generateRandomArray(result, maxValue);cout<<"Неупорядоченные числа от 1 до "<< std::setw(2)<< maxValue <<": ";for(unsignedint i =0; i < maxValue; i++)cout<< result[i]<<' ';cout<< endl;
Sort(result, maxValue -1);cout<<"Упорядоченные числа от 1 до "<< std::setw(2)<< maxValue <<": ";for(unsignedint i =0; i < maxValue; i++)cout<< result[i]<<' ';cout<< endl << endl;delete[] result;}system("pause");return0;}void generateRandomArray(int*_result,
unsignedint _maxValue
){int ind1, ind2, tmp;for(unsignedint i =0, j =1; i < _maxValue; i++, j++)
_result[i]= j;for(int i =1; i <=20; i++){
ind1 =rand()% _maxValue;
ind2 =rand()% _maxValue;
tmp = _result[ind1];
_result[ind1]= _result[ind2];
_result[ind2]= tmp;}}void Sort(int*_values,
unsignedint _count
){int i =0, j = _count;int temp, p;
p = _values[_count >>1];do{while(_values[i]< p) i++;while(_values[j]> p) j--;if(i <= j){
temp = _values[i];
_values[i]= _values[j];
_values[j]= temp;
i++;
j--;}}while(i <= j);if(j >0)
Sort(_values, j);if(_count >(unsigned)i)
Sort(_values+i, _count-i);}
4. Определить недостающее число в неупорядоченной последовательности целых чисел.
Описание.
Написать функцию, принимающую в качестве параметра массив неупорядоченных целых чисел(сгенерированный с помощью функции из задачи 2) и определяющую значение последнего элемента в массиве без доступа к нему.
Декларация.
intGetMissingValue(
constint * _values,// неупорядоченный массив целых чисел от 1 до _count
unsignedint _count// количество элементов в массиве
)
Ожидаемый результат.
Например, для последовательности {5, 7, 8,3, 1, 9, 2, 6, 4} данная функция должна вернуть 4.
Проверка работы.
Решение должно демонстрировать работу функций на примере результатов, полученных при решении задачи 2 (последовательностей, сгенерированных для 4 случайных чисел в диапазоне от 5 до 15).