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

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

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

Доработать блоксхему - C++

19.06.2013, 23:39. Просмотров 377. Ответов 6
Метки нет (Все метки)

Не знаю что не так. Мне всю схему перечеркнули


Составьте программу, которая создает файл, состоящий из неопределенного количества значений типа int. Для ввода используйте цикл, выход из цикла — значение 99*. После записи выведите файл на экран и уничтожьте файл.


Программа к задаче:

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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
#define FILENAME "file.dat"
 
int main()
{
    FILE *fd = fopen(FILENAME, "wb"); // открываем файл на запись в бинарном режиме, получаем дескриптор файла в переменной fd
    srand(time(0));                   // инициализируем генератор псведослучайных чисел текущим временем
    int value = rand();               // в value записываем случайное число
    while((value < 990) || (value > 999))   // пока value не находится в промежутке от 990 до 999
    {
        fwrite(&value, sizeof(int), 1, fd); // записываем в файл fd value
        value = rand();                     // переменной value присваиваем новое случайное значение
    }
    fclose(fd);                             // закрываем файл fd
    fd = fopen(FILENAME, "rb");             // открываем его опять на чтение в бинарном режиме
    while(fread(&value, sizeof(int), 1, fd) != 0)   // читаем из файла 1 значение типа int в переменную value, пока в файле еще есть данные
        printf("%i\n", value);              // выводим значение value на экран
    fclose(fd);                             // закрываем файл
    remove(FILENAME);                       // удаляем файл
    return 0;
}
Миниатюры
Доработать блоксхему  
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Kuzia domovenok
 Аватар для Kuzia domovenok
1886 / 1741 / 117
Регистрация: 25.03.2012
Сообщений: 5,916
Записей в блоге: 1
20.06.2013, 00:02     Доработать блоксхему #2
Во-первых, блок-схемы не нужны. Это пережиток прошлого. Блок-схемы для С++ программ делают маразматики. Я несколько раз это тут на форуме доказывал в разных темах. Объяснял, почему я так считаю, спорил, но...
Но раз учитель просит, то ладно, чёрт с ним.

Во-вторых, если уж делать блок-схему, то надо помнить, что она не должна быть привязана к какому-либо языку программирования. Вообще. То есть в ней не должно быть ни одного оператора из языка.

На твоей же схеме сразу бросаются в глаза
- вызовы функций из библиотеки языка: fopen, srand, time, fread... и.т.д.
- использование операторов из языка: оператор|| оператор& оператор sizeof... и.т.д.
- может что-то ещё в глаза пока не бросилось

Короче, блок-схема на то и блок-схема, что она должна описывать алгоритм, а не его реализацию на конкретном языке. То есть блок-схемы одной и той же программы на Си, на Паскале и на Фортране будут одинаковыми!
Син
1 / 1 / 0
Регистрация: 24.05.2012
Сообщений: 24
20.06.2013, 01:11  [ТС]     Доработать блоксхему #3
И что мне в ней надо поменять, чтобы ее приняли? Мне ее завтра относить нужно. Фигуры хотя-бы правильно составлены?

Добавлено через 1 час 4 минуты
Неужели никто помочь не может?
MrGluck
Ворчун
Эксперт CЭксперт С++
 Аватар для MrGluck
6228 / 3473 / 425
Регистрация: 29.11.2010
Сообщений: 9,178
20.06.2013, 02:50     Доработать блоксхему #4
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
блок-схемы не нужны
Они позволяют разобраться в алгоритме программы, понять её структуру. На начальных этапах программирования очень даже развивает суть понимания дела, чтоб мы знали как это работает.

Для меня до сих пор незазорно схватить листок бумаги и кусок проекта/кода попробовать нарисовать, а далее сравнить с тем, что есть.

Да и надо понимать, что чтобы продукт продать (можно конечно остаться на стадии чисто кодера, но тогда средняя зарплата - потолок) надо уметь не только буковки печатать, но и объяснять как все это работает, описывать процессы, вести документацию, а за понимание бизнес-процессов тебя еще и в попку поцелуют. Очень часто крикуны и люди, которые предоставляют каку в хорошей упаковке или просто программу четко описанную, пусть даже с хреновым функционалом получают гораздо больше симпатий и соотв. $$$ нежели скупые на слова прогеры.

Добавлено через 41 секунду
Син, посмотри на программу как блондинка. Я должен не глядя в код воссоздать алгоритм на любом ЯП

Добавлено через 57 секунд
Где вы видели два завершающих терминала, идущих подряд?
Син
1 / 1 / 0
Регистрация: 24.05.2012
Сообщений: 24
20.06.2013, 02:54  [ТС]     Доработать блоксхему #5
Блиин. Мне эта блоксмема действительно не нужна, но препод без нее прогу не примет. Да и не кодер я ни разу. Мне завтра нужно ее сдать и разбиратьбся с нуля как-то некогда.

вернее не завтра а уже сегодня
MrGluck
Ворчун
Эксперт CЭксперт С++
 Аватар для MrGluck
6228 / 3473 / 425
Регистрация: 29.11.2010
Сообщений: 9,178
20.06.2013, 03:07     Доработать блоксхему #6
Доработать блоксхему
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.06.2013, 03:14     Доработать блоксхему
Еще ссылки по теме:

Доработать программу C++
C++ Доработать программу
C++ Доработать программу

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

Или воспользуйтесь поиском по форуму:
Син
1 / 1 / 0
Регистрация: 24.05.2012
Сообщений: 24
20.06.2013, 03:14  [ТС]     Доработать блоксхему #7
Спасибо огромное!
Yandex
Объявления
20.06.2013, 03:14     Доработать блоксхему
Ответ Создать тему
Опции темы

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