Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 01.04.2014, 18:05   #1 (permalink)
Kulja
Member
 
Регистрация: 01.04.2014
Сообщений: 12
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Алгоритм

Ребят, всем доброго времени суток )))
Помогите, очень прошу, составить алгоритм по коду... язык С
Сама пыталась делать, но запуталась... завтра сдавать...а он не готов до сих пор..
очень на Вас надеюсь.. пооожалуйста )

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define NUM 5
#define MAX_RYHM 10
#define LENGHT_NIMI 30
#define LENGHT_LIIK 10

struct Ryhm {
char nimi[LENGHT_NIMI];
char liik[LENGHT_LIIK];
int vanus;
};

struct Kuchka {
struct Ryhm elements[MAX_RYHM];
int size;
char name[LENGHT_LIIK];
};

struct Ryhm tekushajaRyhm;
struct Kuchka kuchki[NUM];

void read() {
FILE *fData;
if ((fData = fopen("F1", "r")) == NULL) {
printf("Pri otkrqtii faila F1 proizoshla oshibka\n");
exit(1);
}

int i = 0;
int j;
while (fscanf(fData, "%[^\n]", tekushajaRyhm.nimi) == 1) {
fscanf(fData, "%s", tekushajaRyhm.liik);
fscanf(fData, "%d", &tekushajaRyhm.vanus);
fscanf(fData, "%d"); // proposkaem lishnuju stroku

int index = 1; // animal
for (j = 0; j < NUM; j++) //
if ((strcmp(tekushajaRyhm.liik, kuchki[j].name) == 0)) {
index = j;
break;
}

strcpy(kuchki[index].elements[kuchki[index].size].nimi, tekushajaRyhm.nimi);
strcpy(kuchki[index].elements[kuchki[index].size].liik, tekushajaRyhm.liik);
kuchki[index].elements[kuchki[index].size].vanus = tekushajaRyhm.vanus;

kuchki[index].size++;

i++;
if (i == MAX_RYHM) {
printf("massiv zapolnen\n");
break;
}
}

fclose(fData);
}

void write() {
FILE *fOut = fopen("F2", "w");
if (fOut == NULL) {
printf("Pri otkrqtii faila F2 proizoshla oshibka\n");
exit(1);
}

int k, j;
for (j = 0; j < NUM; j++) { //dlja kazdoj kuchki
fprintf(fOut, "\nliik: %s\n", kuchki[j].name);
for (k = 0; k < kuchki[j].size; k++) //dlja kazdogo elementa v kuchke
fprintf(fOut, "nimi: %s\nvanus: %d\n", kuchki[j].elements[k].nimi, kuchki[j].elements[k].vanus);
}

fclose(fOut);
}

int main(void) {
int i;
for (i = 0; i < NUM; i++)
kuchki[i].size = 0; // ubiraem sluchainqe znachenia
strcpy(kuchki[0].name, "human");
strcpy(kuchki[1].name, "animal");
strcpy(kuchki[2].name, "bird");
strcpy(kuchki[3].name, "fish");
strcpy(kuchki[4].name, "insect");

read();
write();

exit(0);
}
Kulja вне форума   Ответить с цитированием

Старый 01.04.2014, 18:05
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Чтобы вы не тратили время на поиск, я отправлю сюда аналогичные топики

Алгоритм перестановки элементов
Разработать алгоритм и программу
Составить алгоритм и написать код
Составить алгоритм
Алгоритм rle

Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 14:53.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.