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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.62
Nikko12
1 / 1 / 0
Регистрация: 07.06.2013
Сообщений: 162
#1

Можно ли еще сократить код? - C++

07.07.2013, 21:30. Просмотров 1718. Ответов 38
Метки нет (Все метки)

Есть программа, которая должна считать данные из файла input.txt и записать ответ в фаил output.txt. Программа должна сложить 2 числа не превосходящих 10^9. Можно ли еще уменьшить код??
C++
1
2
3
4
5
6
7
8
9
#include <fstream>
long a,b; 
main()
{
    std::ifstream cin("input.txt");
    std::ofstream cout("output.txt");
    cin>>a>>b;
    cout<<a+b;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.07.2013, 21:30
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Можно ли еще сократить код? (C++):

Скажите, пожалуйста, возможно ли код сократить еще? - C++
Вот код моей программы. #include &lt;fstream&gt; int a,b,c; main(){ std::fstream i(&quot;input.txt&quot;),o(&quot;output.txt&quot;, 2); i&gt;&gt;a&gt;&gt;b&gt;&gt;c; ...

Поделитесь советом. Как сократить еще 1 символ. =) - C++
c&gt;&gt;a; a--; while(g+=a&amp;1, a/=2); o&lt;&lt;g%3; Подскажите, пожалуйста, реально ли укоротить ее еще? )))

Как можно еще оптимизировать код? - C++
Как еще можно оптимизировать данный код? Если вкратце, то он выводит значение АВ, если ключ = вводу пользотвателя. #include &lt;map&gt; ...

Сократить код, переделав if - C++
#include &lt;iostream&gt; #include &lt;math.h&gt; #pragma hdrstop #pragma argsused using namespace std; int main(int argc, char* argv) ...

Как можно сократить массив? - C++
Как можно сократить масив? К примеру есть масив: A =...

Крестики нолики(сократить код) - C++
а как в крестиках ноликах можно заменить проверку двух подряд крестиков? //////////////////////HORIZONTAL/////////////// if(a==a &amp;&amp;...

38
Nikko12
1 / 1 / 0
Регистрация: 07.06.2013
Сообщений: 162
07.07.2013, 22:23  [ТС] #16
Цитата Сообщение от Tulosba Посмотреть сообщение
имена переменных изменить на однобуквенные.
Что имеется ввиду, переменные и так из одной буквы?
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
07.07.2013, 22:26 #17
Цитата Сообщение от Nikko12 Посмотреть сообщение
Что имеется ввиду, переменные и так из одной буквы?
Так файловые потоки это тоже переменные
0
Nikko12
1 / 1 / 0
Регистрация: 07.06.2013
Сообщений: 162
07.07.2013, 22:26  [ТС] #18
Цитата Сообщение от alsav22 Посмотреть сообщение
std::ifstream r("i");
std::ofstream w("o");
f>>a>>b;
w<<a+b;
C++
1
f>>a>>b;//может r>>a>>b; ??
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
07.07.2013, 22:28 #19
alsav22,
Цитата Сообщение от Nikko12 Посмотреть сообщение
из файла input.txt и записать ответ в фаил output.txt.
Добавлено через 1 минуту
Цитата Сообщение от Nikko12 Посмотреть сообщение
Long на int заменить не получится
почему?
0
Nikko12
1 / 1 / 0
Регистрация: 07.06.2013
Сообщений: 162
07.07.2013, 22:30  [ТС] #20
Цитата Сообщение от Tulosba Посмотреть сообщение
Сообщение от Nikko12
Long на int заменить не получится
почему?
Иначе программа если ввести значение больше чем int, выведет не верный ответ
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
07.07.2013, 22:31 #21
Цитата Сообщение от Nikko12 Посмотреть сообщение
Программа должна сложить 2 числа не превосходящих 10^9.
А это просто так написано было?
0
alsav22
5421 / 4816 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
07.07.2013, 22:34 #22
111 байт.
C++
1
2
#include<fstream>
long a,b;int main(){std::ifstream r("i");std::ofstream w("o");r>>a>>b;w<<a+b;}
1
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
07.07.2013, 22:39 #23
alsav22, где input.txt и output.txt из задания?
0
Nikko12
1 / 1 / 0
Регистрация: 07.06.2013
Сообщений: 162
07.07.2013, 22:52  [ТС] #24
Tulosba, Простите, был не прав, можно Long на int заменить.

Добавлено через 4 минуты
alsav22, Спасибо

Добавлено через 50 секунд
Цитата Сообщение от Tulosba Посмотреть сообщение
alsav22, где input.txt и output.txt из задания?
i и o и есть input.txt и output.txt Сокращенный вид
0
diagon
Higher
1929 / 1195 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
07.07.2013, 23:02 #25
У меня какое-то время на этой задаче 54 символа было. Потом злой админ удалил мою посылку :(
Конкретно на этой задаче на плюсах в топ попыток попасть никак не получится (вернее, получится, но опять удалят посылку).
Проще всего найти какую-нибудь сложную задачу, посидеть над ее сокращением пару часов, и вы почти гарантированно попадете в топ. А на простенькие задачи смотреть не стоит - все топовые позиции уже расхвачены различными читерами.
Цитата Сообщение от Nikko12 Посмотреть сообщение
Можно ли еще уменьшить код??
Да, можно. Символов на 15-20.
0
Nikko12
1 / 1 / 0
Регистрация: 07.06.2013
Сообщений: 162
07.07.2013, 23:06  [ТС] #26
diagon, Если не секрет, за что удалят решение?? Ведь все решено верно
0
Bend3r
149 / 136 / 18
Регистрация: 29.07.2012
Сообщений: 709
08.07.2013, 03:58 #27
stream f;
f.open("Имя файла");
Только расширение файла придется тебе добавлять с помощью strcpy.
0
alsav22
5421 / 4816 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
08.07.2013, 04:03 #28
Bend3r, более короткий код в студию!
0
Nikko12
1 / 1 / 0
Регистрация: 07.06.2013
Сообщений: 162
08.07.2013, 07:24  [ТС] #29
Цитата Сообщение от alsav22 Посмотреть сообщение
C++
1
2
#include<fstream>
long a,b;int main(){std::ifstream r("i");std::ofstream w("o");r>>a>>b;w<<a+b;}
Можно еще сократить:
C++
1
2
#include<fstream>
long a,b;int main(){std::fstream r("inpit.txt");std::ofstream w("output.txt");r>>a>>b;w<<a+b;}
110 байт
0
alsav22
5421 / 4816 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
08.07.2013, 07:58 #30
В 22 посте я неправильно написал, там 97 байтов.
Цитата Сообщение от Nikko12 Посмотреть сообщение
Можно еще сократить:
Здесь - 113.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.07.2013, 07:58
Привет! Вот еще темы с ответами:

Сократить код на два символа - C++
сокртить код #include &lt;fstream&gt; main(int n) { std::fstream I(&quot;input.txt&quot;), O(&quot;output.txt&quot;, 2); I&gt;&gt;n; O&lt;&lt;(n &lt;=0 ? (n - n*n) / 2...

сократить код, добавить функцию - C++
Есть код, замены местами столбцов с min и max элементами, нужно добавить больше функций, и миксимально его сократить... что можно...

Сократить код. Задача про туриста - C++
всем привет есть задача Турист (Время: 1 сек. Память: 16 Мб Сложность: 22%) Гена собирается на туристический слет учеников своей...

Сократить код до 101 - 120 символов - C++
есть задача ! есть код #include &lt;fstream&gt; int main(){ std::fstream q(&quot;input.txt&quot;),o(&quot;output.txt&quot;,2); int n,a,i,j,s=0; q&gt;&gt;n; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
30
Yandex
Объявления
08.07.2013, 07:58
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru