Compare commits

..

No commits in common. "ddfd03f1282d8a0884c8691886d8d783df28a1ee" and "6c0811b572235bda9c94c60c6962e5b6d0e9dea5" have entirely different histories.

24 changed files with 18 additions and 316 deletions

View File

@ -2,187 +2,8 @@
class Program
{
const int dimensione = 10;
static void Main(string[] args)
{
Console.Clear();
//dichiarazione e inizializzazione variabili
int scelta;
//menu
do{
Console.WriteLine("Scegliere un'opzione:");
Console.WriteLine("1. Stampa zig zag");
Console.WriteLine("2. Somma pari dispari");
Console.WriteLine("3. Array invertito");
Console.WriteLine("4. Tre consecutivi");
Console.WriteLine("5. Uno doppio dell'altro");
Console.WriteLine("0. Esci");
Console.Write("Scelta: ");
scelta=Convert.ToInt32(Console.ReadLine());
switch(scelta){
case 0:
Console.Clear();
break;
case 1:
Console.Clear();
StampaArrayZigZag(CreaArrayCasuale());
Pausa();
break;
case 2:
Console.Clear();
Console.WriteLine(StampaPariDispari(CreaArrayCasuale()));
Pausa();
break;
case 3:
Console.Clear();
StampaArray(InvertiArray(CreaArrayCasuale()));
Pausa();
break;
case 4:
Console.Clear();
if(TreConsecutivi(CreaArray()) == true){
Console.WriteLine("Tre valori consecutivi uguali");
}
else{
Console.WriteLine("NO");
}
Pausa();
break;
case 5:
Console.Clear();
if(DoppioDellAltro(CreaArrayCasuale()) == true){
Console.WriteLine("Doppio uno dell'altro");
}
else{
Console.WriteLine("NO");
}
Pausa();
break;
default:
Console.WriteLine("Errore: scelta non valida");
Pausa();
break;
}
}
while(scelta!=0);
}
static void Pausa(){
Console.WriteLine("Premere un tasto per continuare. . .");
Console.ReadKey();
Console.Clear();
}
static int[] CreaArray(){
int[] ritorno = new int[dimensione];
int i = 0;
string input;
do{
Console.Write("Inserire un numero, massimo " +dimensione+ " numeri ([q] per uscire): ");
input = Console.ReadLine(); //non posso ancora fare il catch dell'eccezione se viene inserito un qualcosa che non sia un numero o q
if(input != "q"){
ritorno[i] = Convert.ToInt32(input);
}
i++;
}
while(input!="q" && i<dimensione);
return ritorno;
}
static int[] CreaArrayCasuale(){
//dichiarazione e inizializzazione variabili
Random caso = new Random();
int[] ritorno = new int[dimensione];
for(int i=0; i<dimensione; i++){
ritorno[i]=caso.Next(Int32.MinValue, Int32.MaxValue);//per ogni posizione di ritorno assegno un valore a caso (metodo Random.Next)
}
return ritorno;
}
static void StampaArray(int [] p_array) {
for (int j=0; j<p_array.Length; j++){
Console.WriteLine("Elemento " +j+ ": " +p_array[j]);
}
}
static void StampaArrayZigZag(int[] p_array){
int j = dimensione - 1, k = 0;
for (int i=0; i<dimensione; i++){
Console.Write("Elemento " + i + ": ");
if(i%2 != 0){//se dispari. Con questa condizione posso stampare prima un elemento, poi l'ultimo, poi il secondo... incrementando di 1 i contatori invece che di 2
Console.WriteLine(p_array[j]);//parto dall'ultimo elemento a scendere
j--;
}
else{//se pari
Console.WriteLine(p_array[k]);//parto dal primo elemento a salire
k++;
}
}
}
static string StampaPariDispari(int[] p_array){
int sommaPari = 0, sommaDispari = 0, i = 0;
string ritorno;
while(i<dimensione){//non è un ciclo for perché non posso aumentare il contatore di 2, ma solo di 1
sommaPari = sommaPari + p_array[i];
i = i + 2;
}
i = 1;
while(i<dimensione){//non è un ciclo for perché non posso aumentare il contatore di 2, ma solo di 1
sommaDispari = sommaDispari + p_array[i];
i = i + 2;
}
if (sommaPari == sommaDispari){
ritorno = "Pari e dispari uguali";
}
else{
ritorno = "Pari e dispari diversi";
}
return ritorno;
}
static int[] InvertiArray(int[] p_array){
int[] ritorno = new int[dimensione];
int j = dimensione - 1;
for(int i=0; i<dimensione; i++){
ritorno[i] = p_array[j];//il primo elemento di ritorno è l'ultimo di p_array e così via, i e j variano in opposto
j--;
}
return ritorno;
}
static bool TreConsecutivi(int[] p_array){
bool ritorno = false;
int i = 0;
//copiato da Ottolini
while(i<dimensione-2 && ritorno == false){//mi fermo a dimensione-2 perché con la condizione qua sotto in una volta controllo 3 elementi uno dietro l'altro, quindi alla terz'ultima pos. sto già il penultimo e l'ultimo, altrimenti al giro successivo l'indice è out of bound. Il while è per uscire non appena vengono trovati i tre numeri
if(p_array[i] == p_array[i+1] && p_array[i] == p_array[i+2]){
ritorno = true;
}
i++;
}
return ritorno;
}
static bool DoppioDellAltro(int[] p_array){
bool ritorno = false;
int i = 0, j = 0;
while(ritorno==false && i<dimensione){
while(ritorno==false && j<dimensione){//la prima condizione è ripetuta in modo da uscire subito dal ciclo per il primo consecutivo non appena viene trovato
if (p_array[j] == p_array[i]*2){
ritorno = true;
}
j++;
}
j = 0;
i++;
}
return ritorno;
Console.WriteLine("Hello, World!");
}
}

View File

@ -2,7 +2,7 @@
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net8.0</TargetFramework>
<TargetFramework>net9.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>

Binary file not shown.

View File

@ -1,23 +0,0 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v8.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v8.0": {
"array_funzioni_4/1.0.0": {
"runtime": {
"array_funzioni_4.dll": {}
}
}
}
},
"libraries": {
"array_funzioni_4/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
}
}
}

View File

@ -1,12 +0,0 @@
{
"runtimeOptions": {
"tfm": "net8.0",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "8.0.0"
},
"configProperties": {
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
}
}
}

View File

@ -1,4 +0,0 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v8.0", FrameworkDisplayName = ".NET 8.0")]

Binary file not shown.

View File

@ -1,22 +0,0 @@
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
using System;
using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("array_funzioni_4")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+91e76c6c0e62e42230d6b9f71e0a8ff874748f9e")]
[assembly: System.Reflection.AssemblyProductAttribute("array_funzioni_4")]
[assembly: System.Reflection.AssemblyTitleAttribute("array_funzioni_4")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
// Generato dalla classe WriteCodeFragment di MSBuild.

View File

@ -1 +0,0 @@
7048aae03593aaa31590db7c37aa63580c25250be8805338a79f167ad8678955

View File

@ -1,15 +0,0 @@
is_global = true
build_property.TargetFramework = net8.0
build_property.TargetPlatformMinVersion =
build_property.UsingMicrosoftNETSdkWeb =
build_property.ProjectTypeGuids =
build_property.InvariantGlobalization =
build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = array_funzioni_4
build_property.ProjectDir = /home/BrainTheBest5/git/array_funzioni_4/
build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop =
build_property.EffectiveAnalysisLevelStyle = 8.0
build_property.EnableCodeStyleSeverity =

View File

@ -1,8 +0,0 @@
// <auto-generated/>
global using global::System;
global using global::System.Collections.Generic;
global using global::System.IO;
global using global::System.Linq;
global using global::System.Net.Http;
global using global::System.Threading;
global using global::System.Threading.Tasks;

View File

@ -1 +0,0 @@
1848f0eae1ce9cdb5879084d4202fce11480b7f262aa9e3ae41b3bf55b4cfb36

View File

@ -1,14 +0,0 @@
/home/BrainTheBest5/git/array_funzioni_4/bin/Debug/net8.0/array_funzioni_4
/home/BrainTheBest5/git/array_funzioni_4/bin/Debug/net8.0/array_funzioni_4.deps.json
/home/BrainTheBest5/git/array_funzioni_4/bin/Debug/net8.0/array_funzioni_4.runtimeconfig.json
/home/BrainTheBest5/git/array_funzioni_4/bin/Debug/net8.0/array_funzioni_4.dll
/home/BrainTheBest5/git/array_funzioni_4/bin/Debug/net8.0/array_funzioni_4.pdb
/home/BrainTheBest5/git/array_funzioni_4/obj/Debug/net8.0/array_funzioni_4.GeneratedMSBuildEditorConfig.editorconfig
/home/BrainTheBest5/git/array_funzioni_4/obj/Debug/net8.0/array_funzioni_4.AssemblyInfoInputs.cache
/home/BrainTheBest5/git/array_funzioni_4/obj/Debug/net8.0/array_funzioni_4.AssemblyInfo.cs
/home/BrainTheBest5/git/array_funzioni_4/obj/Debug/net8.0/array_funzioni_4.csproj.CoreCompileInputs.cache
/home/BrainTheBest5/git/array_funzioni_4/obj/Debug/net8.0/array_funzioni_4.dll
/home/BrainTheBest5/git/array_funzioni_4/obj/Debug/net8.0/refint/array_funzioni_4.dll
/home/BrainTheBest5/git/array_funzioni_4/obj/Debug/net8.0/array_funzioni_4.pdb
/home/BrainTheBest5/git/array_funzioni_4/obj/Debug/net8.0/array_funzioni_4.genruntimeconfig.cache
/home/BrainTheBest5/git/array_funzioni_4/obj/Debug/net8.0/ref/array_funzioni_4.dll

View File

@ -1 +0,0 @@
187b823ce741b218aa766e72c802d8bdc6f0c3ee5d25120d14e703a62a0452c5

View File

@ -17,14 +17,14 @@
"/home/BrainTheBest5/.nuget/NuGet/NuGet.Config"
],
"originalTargetFrameworks": [
"net8.0"
"net9.0"
],
"sources": {
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"net9.0": {
"targetAlias": "net9.0",
"projectReferences": {}
}
},
@ -41,8 +41,8 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"net9.0": {
"targetAlias": "net9.0",
"imports": [
"net461",
"net462",
@ -57,15 +57,7 @@
"downloadDependencies": [
{
"name": "Microsoft.AspNetCore.App.Ref",
"version": "[8.0.11, 8.0.11]"
},
{
"name": "Microsoft.NETCore.App.Host.linux-x64",
"version": "[8.0.11, 8.0.11]"
},
{
"name": "Microsoft.NETCore.App.Ref",
"version": "[8.0.11, 8.0.11]"
"version": "[9.0.0, 9.0.0]"
}
],
"frameworkReferences": {

View File

@ -1,11 +1,11 @@
{
"version": 3,
"targets": {
"net8.0": {}
"net9.0": {}
},
"libraries": {},
"projectFileDependencyGroups": {
"net8.0": []
"net9.0": []
},
"packageFolders": {
"/home/BrainTheBest5/.nuget/packages/": {}
@ -23,14 +23,14 @@
"/home/BrainTheBest5/.nuget/NuGet/NuGet.Config"
],
"originalTargetFrameworks": [
"net8.0"
"net9.0"
],
"sources": {
"https://api.nuget.org/v3/index.json": {}
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"net9.0": {
"targetAlias": "net9.0",
"projectReferences": {}
}
},
@ -47,8 +47,8 @@
"SdkAnalysisLevel": "9.0.100"
},
"frameworks": {
"net8.0": {
"targetAlias": "net8.0",
"net9.0": {
"targetAlias": "net9.0",
"imports": [
"net461",
"net462",
@ -63,15 +63,7 @@
"downloadDependencies": [
{
"name": "Microsoft.AspNetCore.App.Ref",
"version": "[8.0.11, 8.0.11]"
},
{
"name": "Microsoft.NETCore.App.Host.linux-x64",
"version": "[8.0.11, 8.0.11]"
},
{
"name": "Microsoft.NETCore.App.Ref",
"version": "[8.0.11, 8.0.11]"
"version": "[9.0.0, 9.0.0]"
}
],
"frameworkReferences": {

View File

@ -1,12 +1,10 @@
{
"version": 2,
"dgSpecHash": "oyvHW86QmUk=",
"dgSpecHash": "LJrMLe12Lus=",
"success": true,
"projectFilePath": "/home/BrainTheBest5/git/array_funzioni_4/array_funzioni_4.csproj",
"expectedPackageFiles": [
"/home/BrainTheBest5/.nuget/packages/microsoft.netcore.app.ref/8.0.11/microsoft.netcore.app.ref.8.0.11.nupkg.sha512",
"/home/BrainTheBest5/.nuget/packages/microsoft.aspnetcore.app.ref/8.0.11/microsoft.aspnetcore.app.ref.8.0.11.nupkg.sha512",
"/home/BrainTheBest5/.nuget/packages/microsoft.netcore.app.host.linux-x64/8.0.11/microsoft.netcore.app.host.linux-x64.8.0.11.nupkg.sha512"
"/home/BrainTheBest5/.nuget/packages/microsoft.aspnetcore.app.ref/9.0.0/microsoft.aspnetcore.app.ref.9.0.0.nupkg.sha512"
],
"logs": []
}