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

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

Войти
Регистрация
Восстановить пароль
 
Иринка
0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 44
#1

Найти число!!! - C++

17.11.2009, 12:47. Просмотров 371. Ответов 5
Метки нет (Все метки)

Прошу вас помочь!!!!
Необходимо найти число книг, имеющихся в магазине определенного года издания.
(С клавиатуры вводится цена и выводится число книг)

Данные (год издания, книги и т.д ) дожны браться из файла, вот программный код:
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
#include <iostream.h>
#include <stdio.h>
 
typedef struct{
double shifr_books;
char avtor[100];
char nazvanie[100];
int god_izdaniya;
int number;
}Library;
 
 
void main(){
int N;
FILE*FP=fopen("Library.dat","wb");
 
Library X;
cout<<"VVedite kolichestvo knig:  \n";
cin>>N;
 
for (int i=0; i<N; i++){
cout<<"\nVvedite shifr knigi: ";
cin>>X.shifr_books;
cout<<"\nVvedite avtora knigi: ";
cin>>X.avtor;
cout<<"\nVvedite nazvanie knigi: ";
cin>>X.nazvanie;
cout<<"\nVvedite god izdaniya knigi: ";
cin>>X.god_izdaniya;
cout<<"\nVvedite nomer stellaga,gde nahoditsya kniga: ";
cin>>X.number;
 
 
fwrite(&X,sizeof(X),1,FP);
}
fclose(FP);
 
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.11.2009, 12:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Найти число!!! (C++):

Некоторое число оканчивается на 2. Если же эту его последнюю цифру переставить на первое место, то число удвоится. Найти это число - C++
Некоторое число оканчивается на 2. Если же эту его последнюю цифру переставить на первое место, то число удвоится. Найти это число.

Дано вещественное число А>0. Найти среди чисел 1, 1+1/2, 1+1/3,… первое число, большее А - C++
Дано вещественное число А&gt;0. Найти среди чисел 1, 1+1/2, 1+1/3,… первое число, большее А

Ввести число n, разбить число на цифры, и найти сумму этих цифр - C++
Здравствуйте.Очень нужно сделать задание, кто может? Заранее спасибо!!! Ввести число n, разбить число на цифры, и найти сумму этих...

Дано рандомное вещественное число P, найти число M после запятой - C++
1)Дано рандомное вещественное число P, найти число М после запятой, если пользователь задает точность количества чисел после запятой. 2)...

Найти число в двоичной записи которого максимальное число единиц - C++
Среди простых чисел ,не превосходящих N ,найти такое ,в двоичной записи которого максимальное число единиц. Уважаемые форумчане помогите...

Дано натуральное число n и действительное число а, найти, используя цикл - C++
Дано натуральное число n и действительное число а, найти, используя цикл: ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
easybudda
Модератор
Эксперт CЭксперт С++
9624 / 5572 / 946
Регистрация: 25.07.2009
Сообщений: 10,701
17.11.2009, 13:18 #2
Иринка, что-то знакомое... Вас с завидным упорством заставляют гибриды из программ на С и С++ делать?
0
Иринка
0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 44
17.11.2009, 21:18  [ТС] #3
Нужно просто поставить счётчик, который считал книги такого то издания и условие, в результате которого сравнивалось есть такой то год или нет, если есть то счётчик увеличивается на 1. Я НЕ ЗНАЮ КАК ЕГО сделать! Помогите пожалуйста!!!
0
M128K145
Эксперт С++
8288 / 3508 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
17.11.2009, 21:26 #4
На сколько я понял, то у тебя есть массив структур. Тогда ты просто фором пробегаешь по всему массиву и считаешь количество
Код
X.god_izdaniya == vvedennui_god
и потом просто выводишь количество совпадений
0
Иринка
0 / 0 / 0
Регистрация: 21.04.2009
Сообщений: 44
18.11.2009, 21:43  [ТС] #5
Почему у меня тогда не работает счётчик???????
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
#include <iostream.h>
#include <stdio.h>
#include <string.h>
 
typedef struct{
double shifr_books;
char avtor[100];
char nazvanie[100];
int god_izdaniya;
int number;
}Library;
 
void main(){
Library X;
FILE*FP=fopen("Library.dat","rb");
int z=0;
int god_izdaniya;
 
 
cout<<"\nVvedite god_izdaniya: ";
cin>>god_izdaniya;
 
 
 
while(!feof(FP)){
fread(&X,sizeof(X),1,FP);
 
    
if (X.god_izdaniya==god_izdaniya) 
z++;
 
{
    cout<<"\nChislo knig iz kollekcii: "<<z<<endl;  
 
}
 
 
}
fclose(FP);
 
}
0
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
18.11.2009, 21:57 #6
попробуй строку 33 вывести после цикла!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.11.2009, 21:57
Привет! Вот еще темы с ответами:

Дано натуральное число. Найти число, получаемое удалением из исходного всех цифр a - C++
Дано натуральное число. Найти число, получаемое удалением из исходного всех цифр a.

Найти максимальное число в массиве и определить, сколько цифр числа делятся на число Z - C++
Массив intA=

как сложить/умножить/найти большее/найти меньшее/найти средние число - C++
привет всем подскажите как сложить/умножить/найти большее/найти меньшее/найти средние число из например 10 введенных чисел, в одной...

Найти и вывести все слова, у которых число гласных букв превышает число согласных - C++
Задание: Дан массив из n слов произвольной длины (длина слова не превышает 80 символов). Символами могут быть только заглавные...


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

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

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