#include <stdio.h>
#define N 8
int main(void)
{
int ar[] ={-1,-3,2,1,-1,4,-1,-2};
int end=N-1,flagB=0,sum=0;
for(int begin=0; begin<end; begin++)
{
if(flagB) sum += ar[begin];
if(ar[begin]>0) flagB = 1;
if(ar[end] < 0) end--;
}
printf("Sum is %d\n\n", sum);
return 0;
}
Решения задач( C/C++)
Помогите с текстами следующих программ:
1.Написать программу,которая перемещает файлы с росширением *.bak в новую папку, печатает содержимое етой папки и просит подтверждение на удаление етих файлов. Создать текстовый файл в который записать имена удаленных файлов. В конце дописать дату и время его удаления.
2.Для одномерного массива:
-Написать функцию вычисления суммы элементов массива, которые находяться между первым и последним положительными элементами
-Написать функцию сортировки массива по спаданию методом выбора мах элемента
-создать шаблон функции ввода/вывода и сортировки массива. Навести примеры для использования етих шаблонов для типов int
и float.
3.С помощью текстового редактора создать файл, который содержит текст, длина которого не превышает 1000 символов. Написать програму, которая:
-Выводит текст на екран
-Вычисляет количество слов в тексте, которые начинаються на гласную букву
-При нажатии любой клавиши поочередно отображает(другим цветом) каждое слово текста, которое начинаеться на гласную букву
Зарание благодарю за помощь!!!:)
- Сортировать линейный массив в условном порядке чётностью или нечётностью значения от Uimbldon, 24 февраля 2012 года
Цитата:
Originally posted by LittleZOOty
Всегда есть преподаватель которому ты не нравишься. Вот и в моем случае так же..только ето преподаватель программирования, и в С++ я так сказать новичек.
Помогите с текстами следующих программ:
1.Написать программу,которая перемещает файлы с росширением *.bak в новую папку, печатает содержимое етой папки и просит подтверждение на удаление етих файлов. Создать текстовый файл в который записать имена удаленных файлов. В конце дописать дату и время его удаления.
2.Для одномерного массива:
-Написать функцию вычисления суммы элементов массива, которые находяться между первым и последним положительными элементами
-Написать функцию сортировки массива по спаданию методом выбора мах элемента
-создать шаблон функции ввода/вывода и сортировки массива. Навести примеры для использования етих шаблонов для типов int
и float.
3.С помощью текстового редактора создать файл, который содержит текст, длина которого не превышает 1000 символов. Написать програму, которая:
-Выводит текст на екран
-Вычисляет количество слов в тексте, которые начинаються на гласную букву
-При нажатии любой клавиши поочередно отображает(другим цветом) каждое слово текста, которое начинаеться на гласную букву
Зарание благодарю за помощь!!!:)
Всегда есть преподаватель которому ты не нравишься. Вот и в моем случае так же..только ето преподаватель программирования, и в С++ я так сказать новичек.
Помогите с текстами следующих программ:
1.Написать программу,которая перемещает файлы с росширением *.bak в новую папку, печатает содержимое етой папки и просит подтверждение на удаление етих файлов. Создать текстовый файл в который записать имена удаленных файлов. В конце дописать дату и время его удаления.
2.Для одномерного массива:
-Написать функцию вычисления суммы элементов массива, которые находяться между первым и последним положительными элементами
-Написать функцию сортировки массива по спаданию методом выбора мах элемента
-создать шаблон функции ввода/вывода и сортировки массива. Навести примеры для использования етих шаблонов для типов int
и float.
3.С помощью текстового редактора создать файл, который содержит текст, длина которого не превышает 1000 символов. Написать програму, которая:
-Выводит текст на екран
-Вычисляет количество слов в тексте, которые начинаються на гласную букву
-При нажатии любой клавиши поочередно отображает(другим цветом) каждое слово текста, которое начинаеться на гласную букву
Зарание благодарю за помощь!!!:)
1 Тебе нуно это в билдере?
2 Есть специальная тема для студентов
3 Попробуй сам, а если че не получаеться спрашивай, задавай вопросы)
LittleZOOty
Цитата:
Originally posted by LittleZOOty
2.Для одномерного массива:
-Написать функцию вычисления суммы элементов массива, которые находяться между первым и последним положительными элементами
2.Для одномерного массива:
-Написать функцию вычисления суммы элементов массива, которые находяться между первым и последним положительными элементами
//C
Код:
Цитата:
Originally posted by OlgaKr
//C
//C
Код:
#include <stdio.h>
#define N 8
int main(void)
{
int ar[] ={-1,-3,2,1,-1,4,-1,-2};
int end=N-1,flagB=0,sum=0;
for(int begin=0; begin<=end; begin++)
{
if(ar[begin]>0) flagB = 1;
if(ar[end] < 0) end--;
if(flagB) sum += ar[begin];
}
printf("Sum is %d\n\n", sum);
return 0;
}
#define N 8
int main(void)
{
int ar[] ={-1,-3,2,1,-1,4,-1,-2};
int end=N-1,flagB=0,sum=0;
for(int begin=0; begin<=end; begin++)
{
if(ar[begin]>0) flagB = 1;
if(ar[end] < 0) end--;
if(flagB) sum += ar[begin];
}
printf("Sum is %d\n\n", sum);
return 0;
}
Хотя этот код с багом:не будет работать если в конце массива будет непропорционально много отрицательных чисел, поэтому значение енд лучше выполнить в отдельном цикле:
Код:
for(end = N-1; end >= 0 && arr[end] < 0; end--);
Туповатая сортирова, но может быть это имеется в виду)
Код:
#include <stdio.h>
//Сортировка одномерного массива
void Sort(int* ar, int n)
{
for(int i = n - 1; i >= 0; i--)
{
int maxIndex = 0;
for(int j = 0; j <= i; j++)
if(ar[j] > ar[maxIndex])
maxIndex = j;
if(maxIndex != i)
{
int temp = ar[maxIndex];
ar[maxIndex] = ar;
ar = temp;
}
}
}
//Печать одномерного массива
void Print(int* ar, int n)
{
for(int i = 0; i < n; i++)
{
printf("%d", ar);
if(i == n - 1)
printf("\n");
else
printf(",");
}
}
int main(void)
{
int ar[] ={-1,-3,2,1,-1,4,-1,-2};
const int N = 8;
Sort(ar, N);
Print(ar, N);
return 0;
}
//Сортировка одномерного массива
void Sort(int* ar, int n)
{
for(int i = n - 1; i >= 0; i--)
{
int maxIndex = 0;
for(int j = 0; j <= i; j++)
if(ar[j] > ar[maxIndex])
maxIndex = j;
if(maxIndex != i)
{
int temp = ar[maxIndex];
ar[maxIndex] = ar;
ar = temp;
}
}
}
//Печать одномерного массива
void Print(int* ar, int n)
{
for(int i = 0; i < n; i++)
{
printf("%d", ar);
if(i == n - 1)
printf("\n");
else
printf(",");
}
}
int main(void)
{
int ar[] ={-1,-3,2,1,-1,4,-1,-2};
const int N = 8;
Sort(ar, N);
Print(ar, N);
return 0;
}
Сформировать массив Z, куда записать положительные элементы массивов X=(x0,x1,..xn-1) и Y=(y0,y1,..yk-1). Вычислить произведение массива Z с четными индексами. Определить, является ли массив Z строго возрастающей ивающей последовательностью. Если нет выполнить упорядочивание по возрасттанию.:)
#include <vcl.h>
#include <conio.h>
#include <stdio.h>
#pragma hdrstop
#define n 64
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{setlocale( LC_ALL,"Russian" );
int m1,m2,n1,n2,K,L;
randomize();
if(m1>m2,n1>n2);
printf("podoydet li klych k zamku");
getch();
return 0;
}
а вот сама задача:
Задача о замочной скважине, подойдет ли ключ к замку.
Даны мозаичные изображения замочной скважины и ключ. Нужно узнать, пройдет ли ключ в скважину? То есть даны матрицы K(m1,n1) и L(m2,n2), m1>m2, n1>n2, состоящие из нулей и единиц. Проверить, можно ли наложить матрицу L на матрицу K( без поворота, разрешается только сдвиг) так, что каждой единице матрицы L соответствовал нуль матрицы K, и если можно, то как (на сколько и в каком направлении следует подвинуть матрицу L по матрице K до выполнения условия).
помогите дописать программу или просто объясните как ее можно сделать,заране спасибо!
У меня нет слов....
Цитата: arb1
if(m1>m2,n1>n2);
...
помогите дописать программу
...
помогите дописать программу
Бггг... А я запустил редактор, помогите дописать искусственный интеллект!
Умиляет транслит при установленной русской локали:
Цитата: arb1
setlocale( LC_ALL,"Russian" );
...
printf("podoydet li klych k zamku");
...
printf("podoydet li klych k zamku");
По теме. Не вижу проблемы в циклах пробежаться по обеим матрицам и сравнить значения. Если все совпали и не осталось пустых - ключ подошёл. Не совпало - сдвигаемся на ряд/строку и повторяем цикл. Сдвигаться дальше некуда - ключ не подошёл.
Составить программу для решения "связи задачи.
Треугольник задан координатами вершин А(0; 0), В(і; і-1) та С(-і; i+1) где i - номер варианта.
Обчислити висоту h(В) і медіану т(С).
Swiat
Задание. Разработать программу на языке С + +, реализующая:
1.1 функцию записи типизированный файл INFO.DAT согласно варианту;
1.2. функцию чтения из файла INFO.DAT согласно варианта.
Сформировать файл, содержащий фамилии N студентов группы (в произвольном порядке). Используя сформированный файл, напечатать фамилии студентов в алфавитном порядке.
Здесь просто записать фамилии в файл без сортировки.
Код C++
Код:
#include <stdafx.h>
#include <iostream>
#include <fstream>
using namespace std;
void main()
{
setlocale(LC_ALL, "English");
ofstream input_file("INFO.dat", ios::trunc);
cout << "vvedite kolichestvo stydentov: ";
int n,a,i;
char b[10];
cin >> n;
input_file << n; input_file << " <- kol-vo stydentov" << endl;
for (i=1;i<n+1;i++) { cout << "vvedite imya stydentov " << i << ' '; cin >> b;
input_file << b; input_file << " <- imya " << i << endl;}
if(strcmp(grup[i].Fam, grup[j].Fam) > 0);
input_file.close();
cin.get();
}
#include <iostream>
#include <fstream>
using namespace std;
void main()
{
setlocale(LC_ALL, "English");
ofstream input_file("INFO.dat", ios::trunc);
cout << "vvedite kolichestvo stydentov: ";
int n,a,i;
char b[10];
cin >> n;
input_file << n; input_file << " <- kol-vo stydentov" << endl;
for (i=1;i<n+1;i++) { cout << "vvedite imya stydentov " << i << ' '; cin >> b;
input_file << b; input_file << " <- imya " << i << endl;}
if(strcmp(grup[i].Fam, grup[j].Fam) > 0);
input_file.close();
cin.get();
}
Цитата: AndronTS
Здравствуйте подскажите как отсортировать по алфавиту фамилии и записать их в файл.]
Примерно так: )
Код:
#include<fstream>
#include<iostream>
using std::ofstream;
using std::ifstream;
using std::ios;
class Surnames
{
public:
char sur[256];
};
void BubbleSort(Surnames* Array, int counter);
int main()
{
ifstream DataFile;
DataFile.open("Info.data",ios::out);
if(!DataFile.is_open())
{
return -1;
}
ofstream OutDataFile("DataSort.data");
char line[256];
int counter = 0;
//плохой вариант, как узнать кол-во записей в строке файла
//но списки делать лень так, что примерно пусть так будет
while(!DataFile.eof())
{
DataFile.getline(line,256);
counter++;
}
Surnames* pointer = new Surnames[counter];
DataFile.seekg(0,ios::beg);
counter = 0;
//считывание данных по-строчно из файла в класс
while(!DataFile.eof())
{
DataFile.getline(pointer[counter].sur,256);
counter++;
}
//сортировка по алфавиту
BubbleSort(pointer,counter);
//вывод результата в новый файл
for(int idx = 0; idx < counter; idx++)
{
OutDataFile << pointer[idx].sur << "\n";
}
delete[] pointer;
DataFile.close();
OutDataFile.close();
return 0;
}
void BubbleSort(Surnames* Array, int counter)
{
bool flag = false;
char tmp[256];
do
{
flag = false;
for(int idx=0; idx < counter - 1; idx++)
{
if(strcmp(Array[idx].sur,Array[idx+1].sur)>0)
{
flag = true;
strcpy_s(tmp,Array[idx].sur);
strcpy_s(Array[idx].sur,Array[idx+1].sur);
strcpy_s(Array[idx+1].sur,tmp);
}
}
}
while(flag);
}
#include<iostream>
using std::ofstream;
using std::ifstream;
using std::ios;
class Surnames
{
public:
char sur[256];
};
void BubbleSort(Surnames* Array, int counter);
int main()
{
ifstream DataFile;
DataFile.open("Info.data",ios::out);
if(!DataFile.is_open())
{
return -1;
}
ofstream OutDataFile("DataSort.data");
char line[256];
int counter = 0;
//плохой вариант, как узнать кол-во записей в строке файла
//но списки делать лень так, что примерно пусть так будет
while(!DataFile.eof())
{
DataFile.getline(line,256);
counter++;
}
Surnames* pointer = new Surnames[counter];
DataFile.seekg(0,ios::beg);
counter = 0;
//считывание данных по-строчно из файла в класс
while(!DataFile.eof())
{
DataFile.getline(pointer[counter].sur,256);
counter++;
}
//сортировка по алфавиту
BubbleSort(pointer,counter);
//вывод результата в новый файл
for(int idx = 0; idx < counter; idx++)
{
OutDataFile << pointer[idx].sur << "\n";
}
delete[] pointer;
DataFile.close();
OutDataFile.close();
return 0;
}
void BubbleSort(Surnames* Array, int counter)
{
bool flag = false;
char tmp[256];
do
{
flag = false;
for(int idx=0; idx < counter - 1; idx++)
{
if(strcmp(Array[idx].sur,Array[idx+1].sur)>0)
{
flag = true;
strcpy_s(tmp,Array[idx].sur);
strcpy_s(Array[idx].sur,Array[idx+1].sur);
strcpy_s(Array[idx+1].sur,tmp);
}
}
}
while(flag);
}
Код:
#include "stdafx.h"
#include <iostream>
using namespace std;
void main ()
{ int i,n,j;
struct info
{char sname[64];
char numb[5];
} scope;
ofstream b("test.txt");
cout << "Kilkist ";
cin >> n;
for (i=0; i<n; i++)
{
cout << "\ nPrizvushche ";
cin >> scope.sname;
cout "\ nTelefon";
cin >> scope.numb;
cout << scope.sname<<' ' << scope.numb[0]<< scope.numb[1]<<'-'<< scope.numb[2]<<scope.numb[3]<< '-' <<scope.numb[4];}
cin >> j;
input_file.close();
cin.get();
}
#include <iostream>
using namespace std;
void main ()
{ int i,n,j;
struct info
{char sname[64];
char numb[5];
} scope;
ofstream b("test.txt");
cout << "Kilkist ";
cin >> n;
for (i=0; i<n; i++)
{
cout << "\ nPrizvushche ";
cin >> scope.sname;
cout "\ nTelefon";
cin >> scope.numb;
cout << scope.sname<<' ' << scope.numb[0]<< scope.numb[1]<<'-'<< scope.numb[2]<<scope.numb[3]<< '-' <<scope.numb[4];}
cin >> j;
input_file.close();
cin.get();
}
Код:
#include <iostream>
#include <fstream>
using namespace std;
int main ()
{
int i,n;
struct info
{
char sname[64];
char numb[6];
}*scope;
ofstream b("test.txt");
cout << "Kilkist ";
cin >> n;
scope = new info[n];
for (i=0; i<n; i++)
{
cout << "\nPrizvushche ";
cin >> scope[i].sname;
cout << "\nTelefon";
cin >> scope[i].numb;
cout << scope[i].sname<<' ' << scope[i].numb[0]<< scope[i].numb[1]<<'-'<< scope[i].numb[2]<<scope[i].numb[3]<< '-' <<scope[i].numb[4];
}
delete[] scope;
b.close();
cout<<endl;
system("pause");
return 0;
}
#include <fstream>
using namespace std;
int main ()
{
int i,n;
struct info
{
char sname[64];
char numb[6];
}*scope;
ofstream b("test.txt");
cout << "Kilkist ";
cin >> n;
scope = new info[n];
for (i=0; i<n; i++)
{
cout << "\nPrizvushche ";
cin >> scope[i].sname;
cout << "\nTelefon";
cin >> scope[i].numb;
cout << scope[i].sname<<' ' << scope[i].numb[0]<< scope[i].numb[1]<<'-'<< scope[i].numb[2]<<scope[i].numb[3]<< '-' <<scope[i].numb[4];
}
delete[] scope;
b.close();
cout<<endl;
system("pause");
return 0;
}
Задания
Унарная операция. Создать объект - связный двунаправленный список с перегруженными унарными операциями «+ +», «-», как движение по списку (как постфиксными так префиксными).
Перезагрузку посмотри