Если компилятор говорит, что Это значит, что такого файла у вас нету. Следовательно вы где то накосячили с файлами проекта.
так.начнем с самого начала.скачал я с сайта майкрософт visual c++ 2010. скачал книгу.допустим нужно написать программу. что выбирать консольное приложение вин32, или пустой проэкт или что? как правильно компилить исполняемый файл? подскажите, если не трудно
File -> New -> Project В следующем окне нажимайте next. Далее и Finish. Затем добавляйте необходимые файлы: Затем пишете код: Code: #include <iostream> int main( int argc, char *argv[] ) { std::cout << "Antichat\n"; // code..code..code return 0; } и компилируете
спасибо за столь подробное разъяснение в скринах! еще один вопрос. как сделать чтобы программа не закрывалась сразу же после выполнения всех действий?
Стоит задача сравнить два текстовых файла построчно, если строки совпадают, то произвести замену т.к. файлы большие, в лоб перебором очень долго. Подскажите алгоритмы или уже может готовые решения, для этого класса задач. Пишу на С++ под Win. Очень нужно.
MaTpOc , подозреваю, что вы пишене на С, а не на С++. Если так, тогда используйте getchar(); Code: #include <stdio.h> int main( int argc, char *argv[] ) { printf( "%s", "Antichat\n" ); // code..code..code getchar(); return 0; } Или же вторая причина, по которой могла произойти ошибка -- вы скачали старый компилятор С++, а там еще не было именных просторанств и файлы стандартных библиотек имели расширение .h В этом случае решение такое: Code: #include <iostream.h> int main( int argc, char *argv[] ) { cout << "Antichat\n"; // code..code..code cin.ignore().get(); return 0; }
Сейчас розбераюсь с стеком и списками. Сверх сложного ничего нету, но вот часто путаюсь с указателями и адресами. Комментировал строчки сам так как понимаю код. Прошу просмотреть и поправить меня, может я что то не так понял. Code: #include "iostream" struct List { int d; //целое число List *p; //указатель на вершину структуры }; List *first(int d); void push(List **top, int d); int pop(List **top); //главная функция int main() { List *top=first(1); //объявление структуры с именем указателя *top for(int i=2;i<6;i++) push(&top, i); //ложем в стек число i while(top) std::cout<<pop(&top)<<" "; //достаём из стека return 0; } //начальное формирование стека List *first(int d) { List *pv=new List; //создаём новую структуру pv->d=d; //заносим число pv->p=0; //указателю присваиваем 0 return pv; //возвращаем структуру } void push(List **top, int d) { List *pv=new List; //создаём новую структуру pv->d=d; //заносим число pv->p=*top; //вершине присваиваем адрес новой структуры *top=pv; //вершине присваиваем структуру } int pop(List **top) { int buf=(*top)->d; //в буфер заносим последнее число List *pv=*top; //указателю структуры присваиваем указатель на вершину *top=(*top)->p; //незнаю delete pv; //удаляем последнюю структуру return buf; //возвращаем число }
помогите плиз сделать задание и Дан массив А1,...,А40 замените все элементы, стоящие между Аmax и Amin или Аmin и Аmax на 0
Code: #include <iostream> int main( int argc, char *argv[] ) { int arraySize = 0; int aMin = 0; int aMax = 0; std::cout << "Enter array size: "; std::cin >> arraySize; int *arr = new int[ arraySize ]; for( int i = 0; i < arraySize; i++ ) { std::cout << "arr[" << i << "] = "; std::cin >> arr[ i ]; } aMin = arr[ 0 ]; for( int i = 1; i < arraySize; i++ ) if( arr[ i ] < aMin ) aMin = arr[ i ]; aMax = arr[ arraySize - 1 ]; for( int i = 1; i < arraySize; i++ ) if( arr[ i ] > aMin ) aMax = arr[ i ]; for( int i = aMin; i < aMax - 1; i++ ) arr[ i ] = 0; for( int i = 0; i < arraySize; i++ ) std::cout << arr[ i ] << std::endl; delete [] arr; return 0; }
сорри, у меня что-то не работает. компилятор VC++ 2010 ошибка 1>c:\users\anton\documents\visual studio 2010\projects\1\1\1.cpp(40): fatal error C1010: непредвиденный конец файла во время поиска предкомпилированного заголовка. Возможно, вы забыли добавить директиву "#include "StdAfx.h"" в источник.
ребят помогите задачку решить пользователь вводит массив 5х5, программа подсчитывает количество нолей которые стоят рядом друг с другом т.е. 1 1 0 0 0 1 1 1 0 0 0 0 0 1 1 0 0 0 0 0 - (нижний островок - 8 нолей) язык C
Code: #include <stdio.h> int main( int argc, char *argv[] ) { const int rows = 5; const int cols = 5; int result = 0; int arr[ rows ][ cols ]; for( int i = 0; i < cols; i++ ) for( int k = 0; k < rows; k++ ) scanf( "%d", &arr[ i ][ k ] ); for( int i = 0; i < cols; i++ ) for( int k = 0; k < rows; k++ ) if( arr[ i ][ k ] == 0 && ( ( arr[ i ][ k - 1 ] == 0 ) || ( arr[ i ][ k + 1 ] == 0 ) || ( arr[ i + 1 ][ k ] == 0 ) || ( arr[ i -1 ][ k ] == 0 ) ) ) result++; printf( "\nresult is: %d", result ); return 0; }
Вы уверены что это будет правильно работать. Тут нужно сделать рекурсивный обход и пройденный элементы устанавливать в 1
Уверен. Небольшая поправочка( проверка инексов на отрицательные значения ): Code: #include <stdio.h> int main( int argc, char *argv[] ) { const int rows = 5; const int cols = 5; int result = 0; int arr[ rows ][ cols ]; for( int i = 0; i < cols; i++ ) for( int k = 0; k < rows; k++ ) scanf( "%d", &arr[ i ][ k ] ); for( int i = 0; i < cols; i++ ) for( int k = 0; k < rows; k++ ) if( arr[ i ][ k ] == 0 && ( ( arr[ i ][ ( k < 0 ) ? k : k - 1 ] == 0 ) || ( arr[ i ][ k + 1 ] == 0 ) || ( arr[ i + 1 ][ k ] == 0 ) || ( arr[ ( i < 0 ) ? i : i - 1 ][ k ] == 0 ) ) ) result++; printf( "\nresult is: %d", result ); return 0; }