Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
home25_21
0 / 0 / 0
Регистрация: 20.08.2011
Сообщений: 1
#1

Говорят Compilation error

23.08.2011, 16:26. Просмотров 1282. Ответов 8
Метки нет (Все метки)

Решаю задачи на сайте ******** раньше решал на Паскале, сейчас решил учить С++...
пытаюсь решить эту задачу
Решил у меня ответ пишется, но на сайте когда сдаю пишет "Compilation error"... подскажите, пожалуйста...
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
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main()
{
    int n;
    FILE *in;
    FILE *out;
    in = fopen("input.txt","rt");
    out = fopen("output.txt","wt");
    fscanf(in,"%d\n",&n);
    printf("%d",n);
    int mas[n],t,ch;
    t=0;
    ch=0;    
    for (int i=1;i<=n;i++){
        fscanf(in,"%d ",&mas[i]);
        }
    for (int i=1;i<=n;i++){
        if (mas[i]%2==1) {fprintf(out,"%d ",mas[i]); t++;};
        }    
        fprintf(out,"\n");
    for (int i=1;i<=n;i++){
        if (mas[i]%2==0) {fprintf(out,"%d ",mas[i]); ch++;};
        }    
    if (ch>t) {fprintf(out,"\nYES");}
              else {fprintf(out,"\nNO");}
}
Добавлено через 2 минуты
И еще... поздно вспомнил... прошу знающих людей высказать своё мнение по поводу программы вобще...
то есть например "Зачем так с файлами работаешь??? Делай потоками!!! вот так:....."
буду очень признателен за любую конструктивную критику!!!
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.08.2011, 16:26
Ответы с готовыми решениями:

Compilation Error
Решал вот эту задачу: http://********/index.asp?main=task&amp;id_task=297 Код...

Почему Compilation error?
Дан некоторый набор букв и словарь. Ваша задача - подсчитать, сколько различных...

C++11::templates::compilation failure
Почему не компилируется. Объяснить. template&lt; unsigned v = 10 &gt; class a {...

No such file or directory compilation terminated
Из-за чего возникает такая ошибка? Или он не видит библиотеку, если не видит,...

О чём говорят подсказки?
Здравствуйте! При записи данного кода, на фахре вылазят такие подсказки, а о...

8
diagon
Higher
1937 / 1203 / 120
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
23.08.2011, 16:42 #2
Уберите iostream и using namespace std; и вместо них поставьте
C
1
#inlclude <cstdio>
Ибо у вас код на чистом си, а хедеры от с++.

P.S. спасибо, что про задачу напомнили, +1 первое место в мою копилку =)
P.P.S. MSVC не поддерживает variable length arrays, размер массива должен задаваться константой.
Я про эту строчку
C
1
int mas[n],t,ch;
1
Jupiter
23.08.2011, 17:55
  #3

Не по теме:

Цитата Сообщение от diagon Посмотреть сообщение
+1 первое место в мою копилку =)
там что по количеству символов расчет?

0
diagon
23.08.2011, 18:16
  #4

Не по теме:

Цитата Сообщение от Maxwe11 Посмотреть сообщение
там что по количеству символов расчет?
Угу...

0
zuq
95 / 95 / 5
Регистрация: 10.04.2011
Сообщений: 256
23.08.2011, 18:56 #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
#include <fstream>
 
int a[100], b,c, n;
 
main() {
 
    std::ifstream i("input.txt");
    std::ofstream o("output.txt");
 
    i>>n;
    for(; !i.eof();) {
 
        i >> n;
        if(n%2) o << n << ' ', c++;
        else a[b] = n, b++;
    }
 
    o<<'\n';
 
    for(n = 0; n < b; n++) {
        o<<a[n] << ' ';
    }
    o << '\n';
 
    b>c ? o<<"YES" : o << "NO";
}
WA на первом же тесте
0
Сыроежка
Заблокирован
23.08.2011, 19:14 #6
Цитата Сообщение от home25_21 Посмотреть сообщение
Решаю задачи на сайте ******** раньше решал на Паскале, сейчас решил учить С++...
пытаюсь решить эту задачу
Решил у меня ответ пишется, но на сайте когда сдаю пишет "Compilation error"... подскажите, пожалуйста...
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
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
int main()
{
    int n;
    FILE *in;
    FILE *out;
    in = fopen("input.txt","rt");
    out = fopen("output.txt","wt");
    fscanf(in,"%d\n",&n);
    printf("%d",n);
    int mas[n],t,ch;
    t=0;
    ch=0;    
    for (int i=1;i<=n;i++){
        fscanf(in,"%d ",&mas[i]);
        }
    for (int i=1;i<=n;i++){
        if (mas[i]%2==1) {fprintf(out,"%d ",mas[i]); t++;};
        }    
        fprintf(out,"\n");
    for (int i=1;i<=n;i++){
        if (mas[i]%2==0) {fprintf(out,"%d ",mas[i]); ch++;};
        }    
    if (ch>t) {fprintf(out,"\nYES");}
              else {fprintf(out,"\nNO");}
}
Добавлено через 2 минуты
И еще... поздно вспомнил... прошу знающих людей высказать своё мнение по поводу программы вобще...
то есть например "Зачем так с файлами работаешь??? Делай потоками!!! вот так:....."
буду очень признателен за любую конструктивную критику!!!
У вас непонятно, на каком языке написана ваша программа! Она не удовлетворяет ни стандарту С++, ни стандарту С. То есть ваша программа совершенно некорректная.

Я лишь могу предположить, судя по заданию размерности массива неконстатным выражением, что вы компилировали программу с помощью компилятора, который поддерживает стандарт С99. Но при этом совершенно непонятно, как у вас тогда "проскочил" в компиляции заголовок <iostream>.

Добавлено через 6 минут
Цитата Сообщение от zuq Посмотреть сообщение
А почему так не проходит?
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
#include <fstream>
 
int a[100], b,c, n;
 
main() {
 
    std::ifstream i("input.txt");
    std::ofstream o("output.txt");
 
    i>>n;
    for(; !i.eof();) {
 
        i >> n;
        if(n%2) o << n << ' ', c++;
        else a[b] = n, b++;
    }
 
    o<<'\n';
 
    for(n = 0; n < b; n++) {
        o<<a[n] << ' ';
    }
    o << '\n';
 
    b>c ? o<<"YES" : o << "NO";
}
WA на первом же тесте
У вас также программа является примером плохого стиля программирования. Во-первых, функция main должна быть объявлена как функция, возвращающая значение типа int. Во-вторых, для индексов используются переменные i, j, k, l, m, n, но никак не b. В-третьих, выражение


C++
1
    b>c ? o<<"YES" : o << "NO";
будет нагляднее выглядеть, если его переписать в виде


C++
1
   o << ( (  b > c ) ? "YES" :  "NO" );
0
grizlik78
Эксперт С++
1983 / 1476 / 191
Регистрация: 29.05.2011
Сообщений: 3,050
23.08.2011, 19:17 #7
GCC позволяет компилировать variable length array для всех. И для C и для С++. Но на acmp не GCC.
0
zuq
95 / 95 / 5
Регистрация: 10.04.2011
Сообщений: 256
23.08.2011, 19:23 #8
Цитата Сообщение от Сыроежка Посмотреть сообщение
У вас также программа является примером плохого стиля программирования. Во-первых, функция main должна быть объявлена как функция, возвращающая значение типа int. Во-вторых, для индексов используются переменные i, j, k, l, m, n, но никак не b. В-третьих, выражение
Я знаю. Писал так для сокращения объема кода
0
easybudda
23.08.2011, 22:22     Говорят Compilation error
  #9

Не по теме:

Цитата Сообщение от Сыроежка Посмотреть сообщение
для индексов используются переменные i, j, k, l, m, n, но никак не b
Возьмём m танков противника... Нет, m мало, n танков...
(с)Старая шутка про военных.

6
23.08.2011, 22:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.08.2011, 22:22
Привет! Вот еще темы с ответами:

Что имеют в виду, когда говорят о масштабируемости системы?
Что имеют в виду, когда говорят о масштабируемости системы? Что такое...

Исправить ошибку в WxDev-C++: Error with debugging process: GDB Error: error, No source file named main.cpp
Здравствуйте товарищи! Новенький я в си, установил wxDev-C++, скомпилировал,...

Какие части шелл кода однозначно говорят что атака по переполнению буфера началась?
Пишу снорт сигнатруру для выявления эксплоита, но по заданию не нужно весь шелл...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

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