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

Почему программа себя странно ведет: зацикливается после ввода значений? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Можно ли создать список массива строк и если да, то как? http://www.cyberforum.ru/cpp-beginners/thread1177548.html
Заранее прошу прощения если вопрос глупый, но ответа на него я не нашел. Можно ли создать список массива строк и если да то как?
C++ Как правильно словить исключение не найденного элемента Доброго вечера! Не могу вьехать, как правильно словить исключение не найденного элемента: string ToDelete = View.DeleteProduct(); vector<string>::iterator DelIT; try { DelIT = find(this->Model.Products.begin(),this->Model.Products.end(),string(ToDelete)); cout << *DelIT; http://www.cyberforum.ru/cpp-beginners/thread1177534.html
Написать программу сложения двух матриц одинакового размера C++
Помогите пожалуйста, чем быстрей, тем лучше! Необходимо написать программу сложения двух матриц одинакового размера. Я написал, но с увеличением количества процессоров скорость увеличивается. Как это исправить? #include <stdio.h> #include <mpi.h> #define M 110 #define N 110 int A, B, C; int main(int argc, char* argv) {
Разработка класса String C++
Нужна помощь, вот задание. Не сильно разбираюсь в ООП, поэтому прошу помощи у вас. Разработать класс String определив для него методы: • копирования строк, реализовав оператор = ; • поиска подстроки; • слияния строк, реализовав операторы += и + ; • эквивалентности строк, набор операторов == и !=; • определения длины строки; • вывода в поток, << ; • ввода из потока >> ;
C++ Пакман на Си. Не могу реализовать корректное передвижение по массиву http://www.cyberforum.ru/cpp-beginners/thread1177498.html
Пишу пакмана на экзамен по Си. Столкнулся с проблемой отображения приведения которое бегает за игроком. Проблема заключается в следующем: Есть текущая координата и координата на которую надо перейти приведению. При переходе я запоминаю содержимое координаты на которую надо перейти приведению. Перемещаю приведение на координату на которую надо перейти приведению. А на предыдущее место ставлю...
C++ Алгоритмы и структуры данных, графы Определить, является ли связанным граф. Задана система односторонних дорог. Найти путь, соединяющий города А и В и не проходящий через заданное множество городов. Помогите решить пожалуйста, скоро сдавать на с++ подробнее

Показать сообщение отдельно
Sevenex
0 / 0 / 0
Регистрация: 05.05.2014
Сообщений: 7

Почему программа себя странно ведет: зацикливается после ввода значений? - C++

16.05.2014, 01:18. Просмотров 352. Ответов 8
Метки (Все метки)

Зацикливается после воода значений. Подскажите пожалуйста в чем может быть проблема.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include <fstream>
#include <iostream>
#include "Library.h"
using namespace std;
 
void addbook()
{
    book one;
    cout<<"\nPlease enter book's name: ";
    cin.getline(one.name,30);
    getchar();
    cout<<"\nPlease enter book's author: ";
    cin.getline(one.author,40);
    getchar();
    cout<<"\nPlease enter book's genre: ";
    cin.getline(one.genre,20);
    getchar();
    cout<<"\nPlease enter book's year: ";
    cin>>one.year;
    cout<<"\nPlease enter book's authentication number: ";
    cin>>one.code;
    ofstream lib ("library.book",ios::app  | ios::binary);//открытие файла для записи в бинарном режиме, все операции будут помещены в конец файла.
    lib.write((char*)&one,sizeof (book));// посимвольная запись в файл, (char*)&one -> получение адреса, откуда начинаем писать
    cout<<"New data have been added\n";
    lib.close();
}
void findbook()
{
    ifstream two("library.book",ios::binary);
    if(!two)
    {
        cout<< "Error."<<endl;
        system("PAUSE");
    }
    else
    {
        two.seekg(0,ios::end);//указатель в конец
        int size=two.tellg();//tellg используем, чтобы получить позицию указателя, после того, как переставили его в конец.
        size=size/sizeof(book);
        book*one=new book[size];
        two.seekg(0,ios::beg);
        two.read((char *)one, sizeof(book)*size);
        char find[30];
        cout<<"\n[SEARCH]\nEnter book: ";
        cin.getline(find,30);
        getchar();
        for(int i=0;i<size;i++)
        {
            if(strcmp(one[i].name, find))
                cout<<"Search progress: "<<i+1<<size<<"[NOT FOUND]"<<endl;
            else cout<<"Book with name "<<one[i].name<< "[FOUND]!"<<endl;
        }
        cout<<endl<<endl;
        two.close();
    }
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:21. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru