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

Разница между двумя идентичными программами - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Прочитать первые 10 символов каждой строки из файла http://www.cyberforum.ru/cpp-beginners/thread692445.html
Мне нужно прочитать первые 10 символов каждой строки из файла. Может функция какая есть, чтобы определенное количество символов строки из файла считывать?
C++ Собственная функция strcat -сцепление строк написать собственную функцию strcat -сцепление строк. Сравнить работу функции со стандартной из библиотеки string.h, если таковая имеется(если стандартной функции не существует, имя функции задания... http://www.cyberforum.ru/cpp-beginners/thread692442.html
C++ Оператор цикла. Не могу понять в чем ошибка
Дано натуральное число. Найти сумму цифр этого числа. Верно ли, что число начинается и заканчивается одной и той же цифрой. // laba_2.1.cpp: главный файл проекта. #include "stdafx.h"...
C++ оператор сложения двух полиномов. объясните одну строку, пожалуйста
polinom polinom::operator + (const polinom &t){ int i; polinom *result; if(deg>=t.deg){ //если степень первого полинома больше степени второго result=new polinom(deg,koef); ...
C++ Конвертирование массива char в long double http://www.cyberforum.ru/cpp-beginners/thread692420.html
#include <iostream> #include <stdlib.h> #include <cstring> using namespace std; class money { private: static const int SIZE = 100; char money_string;
C++ Решение задач Доброго времени дня! помогите пожалуйста составить программы по с++ так как я не понимаю программирование совсем! Вот условия задач: 1) Одна тема - один вопрос 2) Записать программу... подробнее

Показать сообщение отдельно
Parilo
14 / 2 / 0
Регистрация: 18.11.2011
Сообщений: 90
09.11.2012, 12:47  [ТС]
Цитата Сообщение от alsav22 Посмотреть сообщение
Вы у себя спросите: почему вы в первом примере написали while (j<i)? i, в двух примерах (при 10 считываниях), равен 11. Последнее знчение (десятое) вы правильно записываете по индексу i - 2 = 9, т.е. в a[9]. Потом, в цикле, запись в файл. Выход из цикла будет при j = 11, значит последнее, что запишется в файл: a[10]. А что там, если десятое значение находится в a[9]? Сделайте в цикле:
C++
1
cout << j << ' ' << a[j] << endl;
и всё увидите.
Во втором примере всё правильно сделано.
Спасибо большое за разъяснения.
Но меня мучает единственный вопрос.
Почему в первом примере работа со строками хотя я пишу "неправильно" while (j<i), программа работает правильно. Если я даже её исправлю while (j<i-1) он тоже работает правильно.

А во втором примере работа с числами он работает правильно только в одном случае while (j<i-1).

Почем в 1 варианте при неправильном коде, программа работает правильно? Вот последний вопрос.
Спасибо заранее.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.