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

с++ програмеры, есть исходник, гляньте - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ элементы массива http://www.cyberforum.ru/cpp-beginners/thread656694.html
Привет всем Вообщем сижу и заполняю массив M рандомными числами, потом суммирую их и добавляю в другой массив A но когда вывожу массив A на экран получается всего лишь одно число...в чем проблема int main() { int a; for(int i=0;i<12;i++) {
C++ Re: Ответ: Последовательность и статический массив uses crt; var A:real; i,k:longint; bi,s:real; begin clrscr; write('A=');readln(a); i:=0;bi:=0;{начальные значения} while bi<=a do{пока очередное число не больше А} begin http://www.cyberforum.ru/cpp-beginners/thread656688.html
Почему срабатывает rtl C++
Не могу понять, в чем ошибка. Брат делает задания из одной книги и на одной из функций VC++ падает. Я уже долго не работал с C++, может быть, уже что-то забыл и поэтому прошу вас посмотреть этот дурацкий код: void eatspace (char* str) { int i=0,j=0; while ((*(str+i) = *(str+j++))!='\0') if (*(str+i)!=' ') i++; return; }
Сдвиги. (<< и >>) C++
Всем привет, подскажите плз, насчёт сдвигов, а то я чилал в инете и что то ничего не понял. Вот например какой будет результат? int x = 3 << 1; Зарание спасибо. :)
C++ Нахождение функции http://www.cyberforum.ru/cpp-beginners/thread656670.html
Дана функция: Необходимо написать программу нахождения y. Как правильно записать эту функцию в C++? У меня есть пара вариантов, но я не знаю правильно ли я делаю вообще: a = -2*x; y = pow(exp(x),a)+log(sqrt(x*x+4))+pow(sinx, 3)x; или y=exp(-2*x)+log(sqrt(x*x+4))+pow(sin(x),3);
C++ В чем ошибка Подскажите,пожалуйста, в чем ошибка? Вот условие задачи: Составить две программы, первая из которых вводит составные части структуры данных, приведенной в Вашем варианте индивидуального задания, и формирует из них заданную упакованную структуру. Вторая программа вводит упакованную структуру как 16-ричное число и выводит значения отдельных ее составных частей. Вариант 1.Физический адрес на... подробнее

Показать сообщение отдельно
AppleSOft
Сообщений: n/a
23.09.2012, 18:52     с++ програмеры, есть исходник, гляньте
В итоге прога должна спрашивать имя файла, а выдодить количество строк
( не считаются только пустые, комменты типа "//" и "/* */" )

эти исходники я взяты с разных книг, почти то что нужно для решения только если б кто подправил

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
//Р11-17.CPP - чтение текстового файла с помощью операции >>
#include <stdlib.h> *// Для функции exit()
#include <fstream.h> // Для файловых потоков
const int lenName 13; // max длина имени файла 
// Длина вспомогательного массива: 
const int lenString = 60; 
 
void main ()
{ char source[lenName]; // Массив для имени файла
 cout << "\n Введите имя исходного файла: ";
 cin >> source;
ifstream inFile;    //  Входной файловый поток
// Открыть файл source и связать его с потоком  inFile:
inFile.open(source);
if (!inFile)    // Проверить правильность открытия файла
{ cerr << "\n Ошибка при открытии файла " << source;
 exit (l);  // Завершение программы
}
// Вспомогательный массив для чтения: 
char string[lenString];
char next;
cout << "\n Текст файла:\n\n";
cin.get(); * *//    Убирает код иэ потока   cin
while(1) * *//  Неограниченный цикл
    { // Ввод из файла одного слова до пробельного 
 // символа либо EOF:
    inFile >> string;
    // Проверка следующего символа: 
    next = inFile.peek();
    // Выход при достижении конца файла:
    if (next == EOF) break;
    // Печать с добавлением разделительного пробела:
    cout << string << " ";
    if (next == '\n') // Обработка конца строки
 { cout << '\n';
 // 4 - смещение для первой страницы экрана: 
 static int i = 4;
 // Деление по страницам до 20 строк каждая: 
 if (!(++i % 20))
    { cout << "\nДля продолжения вывода " 
 "нажмите ENTER.\n" << endl; 
 cin.get();
    }
 }
    }
}
Результат выполнения программы - постраничный вывод на экран текстового файла, имя которого набирает на клавиатуре пользователь по "запросу" программы. Размер страницы - 20 строк. В начале первой страницы - результат диалога с пользователем и поэтому из файла читаются и выводятся только первые 16 строк.


_________________________________________________________________________________________________________
Следующая программа читает текстовый файл и разделяет его на две части - строки, не содержащие последовательности из двух символов '//', и строки, начинающиеся такой парой символов. Иначе говоря, эта программа позволяет удалить из исходного текста программы на языке Си++ комментарии, начинающиеся парой символов '//' и заканчивающиеся признаком конца строки '\n'. В программе определены два выходных потока outtext и outcom, связанные соответственно с создаваемыми заново файлами text.cpp и comment. Имя входного файла с текстом анализируемой программы на языке Си++ определяет
(вводит с клавиатуры) пользователь. С этим файлом "связывается" функцией ореn() входной поток inFile.
Для проверки безошибочного открытия файлов проверяются значения выражений (!имя потока). При истинности результата вызывается вспомогательная функция errorF().
Вспомогательная переменная int len, позволяет проследить за необходимостью перехода к новой строке в потоке outtext, если во входном потоке inFile обнаружена пара символов '//'. Символы входного потока последовательно читаются в переменную simb и выводятся в нужный выходной поток. Если не встречен символ '/', то все просто - вывод идет в поток outtext. Так как обнаружение во входном отдельного символа '/' не есть признак начала комментария, то в этом случае анализируется следующий символ, читаемый из входного потока в переменную next. Если next имеет значение то это начало комментария, и последующий вывод нужно вести в поток outcom, предварительно "закрыв" строку в потоке outtext символом '\n'. Комментарии в тексте программы поясняют остальные детали алгоритма.


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
57
//р11-18.СРР - выделение комментариев из текста на Си++;
//  посимвольные чтение и запись из текстового файла
#include <stdlib.h> 
#include <fstream.h>
void errorF(char *ss)   //  Вспомогательная функция
{ cerr << "\nОшибка при открытии файла" << ' '  <<
    ss << '\n';
exit(1);
}
const int lenName << 23;    //  Длина массива для имени файла
void main()
{ char progName[lenName]; // Массив для имени файла
    cout << "\n Введите полное имя анализируемой программы: "; 
    cin >> progName;
    ifstream inFile;    //  Входной поток cвязываем входной поток с файлом программы:
    inFile.open(progName);
    if (!inFile) errorF(progName);
    char simb,  last, next; // Вспомогательныe переменные
    ofstream outtext, outcom; // Два выходных потока // Параыанкая для вычисления длим строк лрограмш:
    int len = 0;
    outtext.open("text.cpp",ios::ate);
    if (!outtext) errorF("text.cpp"); 
    outcom.open("comment",ios::app);
    if (!outcom) errorF("comment");
    while (inFile.get(simb))    //  Читает символы до EOF
    { len++;    //  Длинa   очередной строки программы
 if (simb ==    '\n')
 len = 0; // Начнется новая строка программы
    if (simb != '/')    //  это не начало комментария
 // Вывод символа строки программы:
 outtext.put(simb);
    else
    // Когда simb == '/' - возможно начало комментария
 { // Проверка на EOF:
 if (!inFile.get(next)) break;
 if (next == '/')
    { // Теперь уже точно комментарий
    if (len != 1)
 // "Закрываем" строку программы:
 outtext.put('\n'); 
    outcom.put(simb); 
    outcom.put(next);
    // Цикл до конца комментария, т.е. до конца строки: 
    do
 {// Чтение символа ив файла: 
 inFile.get(siab);
 // Запись символа в поток: outcoa.put(aiab);
 } while (simb!='\n');
    }
 else
    // Вывод символов, не входящих в комментарий:
    { outtext.put(simb); 
    outtext.put(next);
    }
 }
    }
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru