Форум программистов, компьютерный форум, киберфорум
Наши страницы

короткие коды с ******** - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Будет ли работать данная конструкция? http://www.cyberforum.ru/cpp-beginners/thread1083612.html
for (x=0; x!=123; ) -будет ли работать и сколько раз повторится?
C++ Где инициализировать переменные класса? Почему я не могу инициализировать переменную непосредственно в описании класса? class Primer { publuc: Metod1() {...}; private: WCHAR name = L"name_name"; */ошибка data member... http://www.cyberforum.ru/cpp-beginners/thread1083595.html
C++ В каких случаях возникает необходимость в создании своего деструктора?
Подскажите пожалуйста, в каких случаях возникает необходимость в создании своего деструктора? Я знаю, что деструктор обычно используется, если при уничтожении объекта нужно освободить память,...
"Выражение должно быть допустимым для изменения левосторонним значением" C++
#include <iostream> #include<conio.h> #include<math.h> #include<fstream> using namespace std; struct knigi { char name; char avtor; int kilkistsor; knigi* next;
C++ hex vs base64 http://www.cyberforum.ru/cpp-beginners/thread1083562.html
Всем доброе утро! Снова с вопросом. Не могу разобраться с кодировкой хекса в base64. Например, есть у меня строка "49276d" из которой нужно сделать base64. Мне сказали, что нужно разбивать по два...
C++ Задача про дроби Сделал вроде всё правильно, но задача не работает и выдаёт ошибку на компиляции: 1> Для всех выходных данных обновления не требуется. 1> drobi.cpp 1>d:\microsoft vusual studio... подробнее

Показать сообщение отдельно
костя666674555
-94 / 0 / 0
Регистрация: 02.01.2014
Сообщений: 78
28.01.2014, 15:29  [ТС]
итак ЗАДАЧА №1
Кликните здесь для просмотра всего текста
A+B
(Время: 2 сек. Память: 16 Мб Сложность: 2%)

Требуется сложить два целых числа А и В.
Входные данные

В единственной строке входного файла INPUT.TXT записано два натуральных числа через пробел, не превышающих 109.
Выходные данные

В единственную строку выходного файла OUTPUT.TXT нужно вывести одно целое число — сумму чисел А и В.
Пример
№ INPUT.TXT OUTPUT.TXT
1 2 3 5

код :
C++
1
2
3
4
5
6
7
#include <fstream>
main(){
std::fstream i("input.txt"),o("output.txt", 2);
int a,b;
i>>a>>b;
o<<a+b;
}
Размер кода: 92
но есть приём по хитрее
C++
1
2
3
4
5
#include <ios>
main()
{
  system("for /f \"tokens=1,2\" %a in (input.txt) do set /a %a+%b >output.txt");
}
Размер кода: 89
РАЗБОР : задача очень проста вводим а и б и выводим а+б

Добавлено через 6 минут
ЗАДАЧА №2
Кликните здесь для просмотра всего текста
Сумма
(Время: 1 сек. Память: 16 Мб Сложность: 19%)

Требуется посчитать сумму целых чисел от 1 до N.
Входные данные

В единственной строке входного файла INPUT.TXT записано единственное целое число N, не превышающее по абсолютной величине 104.
Выходные данные

В единственную строку выходного файла OUTPUT.TXT нужно вывести одно целое число — сумму чисел от 1 до N.
Пример
№ INPUT.TXT OUTPUT.TXT
1 5 15

код
C++
1
2
3
4
5
6
#include <fstream>
main(int n){
std::fstream i("input.txt"), o("output.txt", 2);
i>>n;
o<<(n>0?n:2-n)*++n/2;
}
Размер кода: 100
РАЗБОР
посидев два дня над решением данной задачи вы придёте к формуле дальнейший смысл сокрашения упростить формулу (n -любое! даже отрицательное)

Добавлено через 9 минут
ЗАДАЧА №3
Кликните здесь для просмотра всего текста
Пятью пять - двадцать пять!
(Время: 1 сек. Память: 16 Мб Сложность: 8%)

Вася и Петя учатся в школе в одном классе. Недавно Петя поведал Васе о хитром способе возведения в квадрат натуральных чисел, оканчивающихся на цифру 5. Теперь Вася может с легкостью возводить в квадрат двузначные (и даже некоторые трехзначные) числа, оканчивающиеся на 5. Способ заключается в следующем: для возведения в квадрат числа, оканчивающегося на 5 достаточно умножить число, полученное из исходного вычеркиванием последней пятерки на следующее по порядку число, затем остается лишь приписать «25» к получившемуся результату справа. Например, для того, чтобы возвести число 125 в квадрат достаточно 12 умножить на 13 и приписать 25, т.е. приписывая к числу 12*13=156 число 25, получаем результат 15625, т.е. 1252=15625. Напишите программу, возводящую число, оканчивающееся на 5, в квадрат для того, чтобы Вася смог проверить свои навыки.
Входные данные

В единственной строке входного файла INPUT.TXT записано одно натуральное число А, оканчивающееся на цифру 5, не превышающее 4*105.
Выходные данные

В выходной файл OUTPUT.TXT выведите одно натуральное число - A2 без лидирующих нулей.
Примеры
№ INPUT.TXT OUTPUT.TXT
1 5 25
2 75 5625
3 4255 18105025

код:
C++
1
2
3
4
5
6
#include <fstream>
main(__int64 a){
std::fstream i("input.txt"),o("output.txt", 2);
i>>a;
o<<a*a;
}
Размер кода: 90
РАЗБОР : условие читать бесмысленно вас потянет не в ту сторону решения задачи
можно просто вывести a*a

Добавлено через 3 минуты
ЗАДАЧА №4
Кликните здесь для просмотра всего текста
Игра
(Время: 1 сек. Память: 16 Мб Сложность: 4%)

В свободное время одноклассники Вася и Петя любят играть в различные логические игры: морской бой, крестики-нолики, шахматы, шашки и многое другое. Ребята уже испробовали и поиграли во всевозможные классические игры подобного рода, включая компьютерные. Однажды им захотелось сыграть во что-нибудь новое, но ничего подходящего найти не удалось. Тогда Петя придумал следующую игру «Угадайка»: Играют двое участников. Первый загадывает любое трехзначное число, такое что первая и последняя цифры отличаются друг от друга более чем на единицу. Далее загадавший число игрок переворачивает загаданное число, меняя первую и последнюю цифры местами, таким образом получая еще одно число. Затем из максимального из полученных двух чисел вычитается минимальное. Задача второго игрока – угадать по первой цифре полученного в результате вычитания числа само это число. Например, если Вася загадал число 487, то перестановкой первой и последней цифры он получит число 784. После чего ему придется вычесть из 784 число 487, в результате чего получится число 297, которое и должен отгадать Петя по указанной первой цифре «2», взятой из этого числа. Петя успевает лучше Васи по математике, поэтому практически всегда выигрывает в играх такого типа. Но в данном случае Петя схитрил и специально придумал такую игру, в которой он не проиграет Васе в любом случае. Дело в том, что придуманная Петей игра имеет выигрышную стратегию, которая заключается в следующем: искомое число всегда является трехзначным и вторая его цифра всегда равна девяти, а для получения значения последней достаточно отнять от девяти первую, т.е. в рассмотренном выше случае последняя цифра равна 9-2=7. Помогите Пете еще упростить процесс отгадывания числа по заданной его первой цифре, написав соответствующую программу.
Входные данные

В единственной строке входного файла INPUT.TXT задана единственная цифра К, соответствующая первой цифре полученного Васей в результате вычитания наименьшего загаданного Васей значения из наибольшего.
Выходные данные

В выходной файл OUTPUT.TXT нужно вывести значение полученной Васей разности.
Примеры
№ INPUT.TXT OUTPUT.TXT
1 5 594
2 2 297
3 7 792

код:
C++
1
2
3
4
5
6
7
#include <fstream>
main(int a)
{
std::fstream I("input.txt"), O("output.txt", 2);
I>>a;
O<< 99*++a;
}
Размер кода: 89
но жестокий **** принимает и такое
C++
1
2
3
4
5
#include <ios>
main()
{
  system("for /f %n in (input.txt) do set /a 99*%n+99 >output.txt");
}
Размер кода: 78

Добавлено через 33 минуты
ЗАДАЧА №5
Кликните здесь для просмотра всего текста
Статистика
(Время: 1 сек. Память: 16 Мб Сложность: 25%)

Вася не любит английский язык, но каждый раз старается получить хотя бы четверку за четверть, чтобы оставаться ударником. В текущей четверти Вася заметил следующую закономерность: по нечетным дням месяца он получал тройки, а по четным – четверки. Так же он помнит, в какие дни он получал эти оценки. Поэтому он выписал на бумажке все эти дни для того, чтобы оценить, сколько у него троек и сколько четверок. Помогите Васе это сделать, расположив четные и нечетные числа в разных строчках. Вася может рассчитывать на оценку 4, если четверок не меньше, чем троек.
Входные данные

В первой строке входного файла INPUT.TXT записано единственное число N – количество элементов целочисленного массива (1<=N<=100). Вторая строка содержит N чисел, представляющих заданный массив. Каждый элемент массива – натуральное число от 1 до 31. Все элементы массива разделены пробелом.
Выходные данные

В первую строку выходного файла OUTPUT.TXT нужно вывести числа, которые соответствуют дням месяцев, в которые Вася получил тройки, а во второй строке соответственно расположить числа месяца, в которые Вася получил четверки. В третьей строке нужно вывести «YES», если Вася может рассчитывать на четверку и «NO» в противном случае. В каждой строчке числа следует выводить в том же порядке, в котором они идут во входных данных. При выводе, числа отделяются пробелом.
Примеры
№ INPUT.TXT OUTPUT.TXT
1 5
4 16 19 31 2 19 31
4 16 2
YES
2 8
29 4 7 12 15 17 24 1 29 7 15 17 1
4 12 24
NO

код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <fstream>
#define R for(i=0;i<n;i++){
main(){ std::fstream q("input.txt"),o("output.txt", 2);
    int a[1013],n,b=0,s=0,i,j;
    q>>n;
    R
        q>>a[i];
    }
    R
        if(a[i]%2==1){
            o<<a[i]<<" ";
            s++;
        }
    }
    o<<"\n";
    R
        if(a[i]%2==0){
            o<<a[i]<<" ";
            b++;
        }
    }
    o<<"\n"<<(b<s ? "NO" : "YES");
    }
Размер кода: 268 (как короче?)
РАЗБОР здача очень легка в принципе это пказывает мой код
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru