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

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

Войти
Регистрация
Восстановить пароль
 
freeman27015
50 / 49 / 2
Регистрация: 19.03.2009
Сообщений: 320
#1

структура данных о десяти препаратах - C++

30.03.2009, 18:40. Просмотров 490. Ответов 3
Метки нет (Все метки)

здравствуйте. помогите пожалуйста в решении задачи, условие во вложенном файле:


вот что у меня получилось, но я вошел в ступор и незнаю как сделать дальше...
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
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include <time.h>
#include <stdlib.h>
 
FILE *F;
FILE *G;
#define fname "d:\\prof\\test1.txt"
#define fgname "d:\\prof\\test2.txt"
 
void zapisfile();
void change();
 
void main(void)
{
if((F=fopen(fname,"wt"))==NULL)
{printf("error write in file"); return;}
zapisfile();
change();
fclose(F);
fclose(G); }//end prg
 
void zapisfile()
{ int c,i;
float y,x=-2;
randomize();
while (x>=-2&&x<=4)
{
 y=3*x*x+7.5*x-23;
 x=x+0.5;
 fprintf(F,"%6.2f\n",y);
}
while (x>4&&x<=10)
{
 y=2*sin(x);
 x=x+0.5;
 fprintf(F,"%6.2f\n",y);
}
fclose(F);
}     //end function1
 
void change()
{
 if((F=fopen(fname,"rt"))==NULL)
 {printf("Error write file"); return;}
 if((G=fopen(fgname,"wt"))==NULL)
 {printf("Error write file"); return;}
 int n=25;
 for(int i=2;i<n;i+2)
 {float k;
  {fscanf(F,"%f\n",&k);
  fprintf(G,"%6.2f\n",k);}}
}
0
Вложения
Тип файла: rar задача.rar (461.0 Кб, 13 просмотров)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.03.2009, 18:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос структура данных о десяти препаратах (C++):

Массив: Найти минимальный и максимальный из данных десяти элементов. - C++
Найти минимальный и максимальный из данных десяти элементов.

В массиве определить наибольшие из первых десяти элементов и последних десяти элементов и поменять их местами - C++
В массиве A из 20 элементов определить наибольшие из первых десяти элементов и последних десяти элементов и поменять их местами. ...

Найти минимальный четный из данных десяти ненулевых целочисленных элементов - C++
1.Дано целое число N (&gt; 1). Вывести наименьшее целое K, при котором выполняется неравенство 3K &gt; N, и само значение 3K. 2.Найти...

Найти минимальный нечетный из данных десяти ненулевых целочисленных элементов - C++
Найти минимальный нечетный из данных десяти ненулевых целочисленных элементов, вводимых с клавиатуры. Если требуемые элементы отсутствуют,...

Найти минимальный нечетный из данных десяти ненулевых целочисленных элементов, вводимых с клавиатуры - C++
Найти минимальный нечетный из данных десяти ненулевых целочисленных элементов, вводимых с клавиатуры. Если требуемые элементы отсутствуют,...

Найти минимальный нечетный из данных десяти ненулевых целочисленных элементов, вводимых с клавиатуры - C++
Найти минимальный нечетный из данных десяти ненулевых целочисленных элементов, вводимых с клавиатуры. Если требуемые элементы отсутствуют,...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Gravity
562 / 556 / 39
Регистрация: 29.01.2009
Сообщений: 1,274
30.03.2009, 19:10 #2
Ну оформи структуру препаратов и работай с ней. Примерно так
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
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
 
#define MAXNAME 100
#define MAXTAB 10
 
struct drug {
    char name[MAXNAME]; //наименование
    int number; //количество
    int period; //срок хранения (в месяцах)
    int cost; //цена
} drugtab[MAXTAB];
 
int main()
{
    int i, imax, maxcost;
    
    /* задаем цену препаратам через генератор случ. чисел */
    for(i = 0; i < MAXTAB; i++)
       drugtab[i].cost = rand()%100;
    
    /* поиск самого дорогостоящего препарата */
    imax = maxcost = 0;
    for(i = 0; i < MAXTAB; i++)
       if(drugtab[i].cost > maxcost) {
          maxcost = drugtab[i].cost;
          imax = i;
       }
    printf("Drug with max cost is:\n\n");
    printf("name = %s\nnumber = %d\nperiod = %d\ncost = %d\n",
                 drugtab[imax].name, drugtab[imax].number, drugtab[imax].period, drugtab[imax].cost);
    
    getch();
    return 0;
}
1
freeman27015
50 / 49 / 2
Регистрация: 19.03.2009
Сообщений: 320
30.03.2009, 21:09  [ТС] #3
то что на фотографии ниже карточки с заданием, тоже относится к задаче
0
Yevgenijz
11 / 11 / 1
Регистрация: 31.03.2009
Сообщений: 69
31.03.2009, 15:35 #4
Цитата Сообщение от freeman27015 Посмотреть сообщение
здравствуйте. помогите пожалуйста в решении задачи, условие во вложенном файле:


вот что у меня получилось, но я вошел в ступор и незнаю как сделать дальше...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include<stdio.h>
#include<conio.h>
#include<math.h>
#include <time.h>
#include <stdlib.h>
 
FILE *F;
FILE *G;
#define fname "d:\\prof\\test1.txt"
#define fgname "d:\\prof\\test2.txt"
 
void zapisfile();
void change();
 
void main(void)
{
if((F=fopen(fname,"wt"))==NULL)
{printf("error write in file"); return;}
zapisfile();
change();
fclose(F);
fclose(G); }//end prg
наверно, стоило бы объявить не
C
1
2
void zapisfile();
void change();
а
C
1
2
3
int zapisfile();
int change();
int main()
чтобы эти функции передавали код ошибки в вызывающую программу, напр.
C
1
2
3
4
if((F=fopen(fname,"wt"))==NULL)
{fprintf(stderr,"ne udalos otkryt fajl"); // писать об ошибках следует НЕ в выходной поток по умолчанию, а в специальный выходной поток stderr
return FAIL;// FAIL должно быть >0, т.к. 0 означает, что ошибок нет
}
тогда и main() получив от zapisfile или change код возврата либо продолжит выполнение(если 0), либо сделает return с этим же кодом возврата, либо попытается исправить ошибку
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.03.2009, 15:35
Привет! Вот еще темы с ответами:

В массиве A из 20 элементов определить наибольшие из первых десяти элементов и последних десяти элементов и поменять их местами. - C++
В массиве A из 20 элементов определить наибольшие из первых десяти элементов и последних десяти элементов и поменять их местами. Элементы...

Структура данных - C++
Задание:Известны оценки каждого из 20-ти студентов группы по двенадцати предметам. Определить среднюю оценку каждого студента и всего...

Структура данных - C++
Я сейчас изучаю Си. (по книжкам(Керниган,Ритчи ) и видеокурс от &quot;Специалист&quot;). У меня такой вопрос стоит ли параллельна учить Структуры...

Структура данных - C++
Для структуры данных, приведенной на рисунке, создать массив записей и определить фирму, товар которой приходит чаще всех. Массив записей я...


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

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

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